Php 如何在MediaWiki上安装带有建议的Google搜索框?

Php 如何在MediaWiki上安装带有建议的Google搜索框?,php,search,mediawiki,Php,Search,Mediawiki,我发现了MediaWiki的几个扩展,允许您在MediaWiki站点上放置一个用于搜索web的Google搜索框。但是,它们似乎都没有启用“建议”的选项,该选项根据用户迄今为止键入的内容填充可能的搜索词的下拉菜单。我该怎么做 我将此发布到Stackoverflow,因为解决方案很可能需要编程 仅供参考,我发现的现有扩展包括: - -首先,您需要在mediawiki安装中添加一个新文件。就叫它googleSuggest.php吧。您需要此文件,因为浏览器web安全存在跨域问题(您可以感谢浏览器开

我发现了MediaWiki的几个扩展,允许您在MediaWiki站点上放置一个用于搜索web的Google搜索框。但是,它们似乎都没有启用“建议”的选项,该选项根据用户迄今为止键入的内容填充可能的搜索词的下拉菜单。我该怎么做

我将此发布到Stackoverflow,因为解决方案很可能需要编程

仅供参考,我发现的现有扩展包括: -
-

首先,您需要在mediawiki安装中添加一个新文件。就叫它googleSuggest.php吧。您需要此文件,因为浏览器web安全存在跨域问题(您可以感谢浏览器开发人员)

向其中添加以下代码:

<?php
$q = strtolower($_GET["q"]);
if (!$q) return;

$url="http://suggestqueries.google.com/complete/search?qu=".$q;
$text = file_get_contents($url); //Get content from Google suggest
$text=str_replace("window.google.ac.h([\"$q\",[[","",$text); //Remove unwanted portion
$arr_items=explode("],[",$text); //Split and put it in arrary
foreach($arr_items as $items)
{            $arr_item=explode(",",$items);
            $key=$arr_item[0]; //Get the keyword, the arrary will have other details such as no.of resutls also.
            $key=trim($key,"\""); //Use to remove quotes
        if (strpos(strtolower($key), $q) !== false) {
            echo "$key\n";
        }

}
?>

然后您需要从下载jquery 然后,您需要获得此插件:

然后,您需要编辑标题部分。添加以下行

<script type="text/javascript" src="PATHTOJQUERY.JS"></script>
<script type='text/javascript' src='PATHTOjquery.autocomplete.js'></script>
<link rel="stylesheet" type="text/css" href="PATHTOjquery.autocomplete.css" />

<script type="text/javascript">
var keywords=['qualitypoint','qpt','quality','one','two'];
$().ready(function() {


    $("#q").autocomplete("googleSuggest.php", {
        width: 260,
        selectFirst: false
    });

    $("#q").result(function(event, data, formatted) {
        if (data)
            $(this).parent().next().find("input").val(data[1]);
    });


});</script>

var关键字=['qualitypoint','qpt','quality','one','two'];
$().ready(函数()){
$(“#q”).autocomplete(“googleSuggest.php”{
宽度:260,
selectFirst:false
});
$(“#q”).result(函数(事件、数据、格式化){
如果(数据)
$(this).parent().next().find(“input”).val(数据[1]);
});
});
然后,您希望在哪里进行web搜索:

    <form method="get" action="http://google.com/search" autocomplete="off" >
        <p>

            <input type="text" id="q" />
<input type="submit" value="Google Search" />

        </p>
    </form>