我们刚刚向我们的网站添加了一个新的 Google 自定义搜索,但它不处理多字搜索。如果您输入一个单词,它可以正常工作,如果您输入两个或多个单词,它会返回“No Results”
此外,当它返回结果时,搜索字段会显示类似“Word%20Word%20Word”的搜索词
这是谷歌给我们使用的代码:
<!-- The following javascript appears before the closing </head> tag. -->
<script>
(function() {
var cx = '012938749785999463601:bae5a4ajf2q';
var gcse = document.createElement('script'); gcse.type = 'text/javascript'; gcse.async = true;
gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
'//www.google.com/cse/cse.js?cx=' + cx;
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(gcse, s);
})();
</script>
<!-- This tag is inserted where the search box should render -->
<gcse:searchbox-only></gcse:searchbox-only>
您可以在以下网址看到搜索功能:
http://amazingribs.com/search_results.html
好的,我发现了这个问题,但我不知道如何解决它。如果是 Google 内部问题,我可能无法修复它。
我注意到的是,如果你在搜索字段中输入两个或更多的词——比如“Corned Beef”——你会得到“No Results”,但是当你检查 URL 时,你会注意到搜索词显示为“ Corned%2520牛肉”。搜索功能在术语中插入一个额外的“25”,而不是简单的 %20。如果手动删除 URL 中的“25”,多词搜索正常返回结果。
这可以在上面显示的脚本中修复吗?或者,这是 Google 内部的问题吗?