Google自定义网站搜索 - 促销不显示

时间:2013-05-29 13:39:14

标签: javascript google-custom-search

我正在使用标准的自定义搜索安装。我有促销设置到我的帐户。

我有以下内容:

    google.load('search', '1', { language: 'en', style: google.loader.themes.MINIMALIST });
    google.setOnLoadCallback(function () {
        var customSearchOptions = {};
        customSearchOptions[google.search.Search.RESTRICT_EXTENDED_ARGS] = { 'as_sitesearch': '' };
        var customSearchControl = new google.search.CustomSearchControl('CSE-UNIQUE-ID', customSearchOptions);
        customSearchControl.setResultSetSize(google.search.Search.FILTERED_CSE_RESULTSET);
        var options = new google.search.DrawOptions();
        options.setAutoComplete(true);
        customSearchControl.setLinkTarget(google.search.Search.LINK_TARGET_SELF);
        customSearchControl.draw('cse', options);
        customSearchControl.execute(getParameterByName("q"));
    }, true);


    function getParameterByName(name) {
        name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
        var regexS = "[\\?&]" + name + "=([^&#]*)";
        var regex = new RegExp(regexS);
        var results = regex.exec(window.location.search);

        if (results == null) {
            return "";
        }

        else {
            return decodeURIComponent(results[1].replace(/\+/g, " "));
        }
    }

我正在设置javascript对象字段:as_sitesearch通过CMS,因此代码可以跨站点使用。当字段填充为“.example.com”时,促销不会显示在搜索结果中。另一方面,它们会在自动完成中显示。

当as_sitesearch字段为空时,促销会显示?这是为什么?

由于

1 个答案:

答案 0 :(得分:0)

似乎当促销的链接完全链接到子域或其他域时,搜索过滤器会从结果中删除促销,因为它不在as_sitesearch字段中的给定域内。

虽然看起来自动填充搜索不使用给定的过滤器,因此会显示促销信息。