我究竟做错了什么?使用 NationBuilder 实现自定义 Google 搜索

问题描述

我已按照有关如何使用 NationBuilder (https://nationbuilder.com/implementing_a_custom_google_search_using_nationbuilder?page=2) 实施自定义 Google 搜索的所有说明进行操作

搜索栏出现在网站上,但没有搜索结果出现。 (此处的网站示例:https://www.migraine.org.au/search

我想在此代码自定义什么来实现结果?我添加自定义搜索 ID,但我觉得我还必须更改其他内容

<form method="get" action="/search">
  <div class="row">
    <div class="col-lg-6">
      <div class="input-group">
        <input name="q" type="search" placeholder="Enter keywords..." class="form-control" />
        <span class="input-group-btn">
          <input class="btn btn-primary" type="submit" value="SEARCH" />
        </span>
      </div>
    </div>
  </div>
</form>
<script type="text/javascript">
  (function() {
    function getUrlParameter(name) {
      name = name.replace(/[\[]/,'\\[').replace(/[\]]/,'\\]');
      var regex = new RegExp('[\\?&]' + name + '=([^&#]*)');
      var results = regex.exec(location.search);
      return results === null ? '' : decodeURIComponent(results[1].replace(/\+/g,' '));
    };
    document.getElementsByName("q").forEach(function(el){el.value = getUrlParameter("q")});
    var cx = '{% if custom_search_id and custom_search_id != "" %}{{ custom_search_id }}{% else %}008016235122236849965:29prjnksala{% endif %}';
    var gcse = document.createElement('script');
    gcse.type = 'text/javascript';
    gcse.async = true;
    gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') + '//cse.google.com/cse.js?cx=' + cx;
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(gcse,s);
  })();
</script>
<div class="row">
  <div class="gcse-searchresults-only" data-enableAutoComplete="true" data-safeSearch="active" data-as_sitesearch="{{ site.full_url | split:'//' | last | split:'/' | first }}" data-image_as_sitesearch="{{ site.full_url | split:'//' | last | split:'/' | first }}" data-enableImageSearch="false" data-disableWebSearch="false"></div>
</div>

解决方法

看起来 cx id 以某种方式连接在一起。浏览器向 https://cse.google.com/cse.js?cx=02a15aadc5f939bbe008016235122236849965:29prjnksala 发出请求,但返回 404 错误

有两个不同的 cx id(02a15aadc5f939bbe 和 008016235122236849965:29prjnksala)混在一起

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...