我正在使用标准的自定义搜索安装。我有促销设置到我的帐户。
我有以下内容:
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字段为空时,促销会显示?这是为什么?
由于
答案 0 :(得分:0)
似乎当促销的链接完全链接到子域或其他域时,搜索过滤器会从结果中删除促销,因为它不在as_sitesearch字段中的给定域内。
虽然看起来自动填充搜索不使用给定的过滤器,因此会显示促销信息。