
前言
众所周知,wordpress默认的自带搜索功能是很占用服务器资源的,也比较容易被一些有心人利用,比如被刷一些违规词,导致大家网站排名权重下降。所以安鹿推荐大家使用百度/必应/谷歌搜索代替,还能增加网站收录。接下来安鹿就给大家分享如何使用百度/必应/谷歌代替wordpress站内搜索,同时也给自己留个记录。
安鹿也分享过很多实用建站教程,有需要的可以在安鹿轩󠇖󠆍󠆕󠇘󠅷󠆚󠇕󠆞󠅹󠇙󠆩󠆯󠇘󠆭󠆙󠅧󠅧󠅧󠄞󠅑󠅞󠅜󠅥󠄡󠄣󠄡󠄤󠄞󠅓󠅟󠅝www.anlu1314.com搜一下关键词。
解决宝塔面板中网站错误日志lua udp socket read timed out?lua udp socket read timed out报错?
宝塔服务器磁盘爆满?检测到当前磁盘超过80%/90%如何清理
教程|搭建属于自己的AdGuard Home 拦截全网广告 保护自家设备
教程
百度搜索代码及效果
// WordPress站内搜索替换为百度搜索 https://www.anlu1314.com
function wp_use_baidu_search( $wp_query ) {
// 屏蔽后台搜索(保留WP原生搜索功能)
if (is_admin()) return;
$s = '';
if (isset($wp_query->query_vars['s'])) {
$s = trim($wp_query->query_vars['s']);
}
if (!$s) { // 空搜索不跳转
return;
}
// 获取当前网站域名
$host = strtolower($_SERVER['HTTP_HOST']);
// 构造百度搜索URL
$search_engine = 'https://www.baidu.com/s?wd=';
$query = urlencode($s . ' site:' . $host);
// 执行重定向
wp_redirect($search_engine . $query);
exit;
}
// 挂载替换处理函数
add_action('parse_query', 'wp_use_baidu_search');
必应搜索代码及效果
// WordPress站内搜索替换为必应搜索 https://www.anlu1314.com
function wp_use_bing_search( $wp_query ) {
// 屏蔽后台搜索(保留WP原生搜索功能)
if (is_admin()) return;
$s = '';
if (isset($wp_query->query_vars['s'])) {
$s = trim($wp_query->query_vars['s']);
}
if (!$s) { // 空搜索不跳转
return;
}
// 获取当前网站域名
$host = strtolower($_SERVER['HTTP_HOST']);
// 构造必应搜索URL
$search_engine = 'https://www.bing.com/search?q=';
$query = urlencode($s . ' site:' . $host);
// 执行重定向
wp_redirect($search_engine . $query);
exit;
}
// 挂载替换处理函数
add_action('parse_query', 'wp_use_bing_search');
谷歌搜索代码及效果
// WordPress站内搜索替换为谷歌搜索 https://www.anlu1314.com
function wp_use_google_search( $wp_query ) {
// 屏蔽后台搜索(保留WP原生搜索功能)
if (is_admin()) return;
$s = '';
if (isset($wp_query->query_vars['s'])) {
$s = trim($wp_query->query_vars['s']);
}
if (!$s) { // 空搜索不跳转
return;
}
// 获取当前网站域名
$host = strtolower($_SERVER['HTTP_HOST']);
// 构造谷歌搜索URL
$search_engine = 'https://www.google.com/search?q=';
$query = urlencode($s . ' site:' . $host);
// 执行重定向
wp_redirect($search_engine . $query);
exit;
}
// 挂载替换处理函数
add_action('parse_query', 'wp_use_google_search');
特别说明
打开当前主题下的functions.php加入上述代码保存,再点搜索就会是上图效果,此代码后台搜索功能保持正常,仅替换前台搜索。
如果添加代码后测试中文搜索正常就不用往下看。
安鹿发现如果搜索中文关键词时,有些结果会显示乱码,就是被转义了
只需要打开search相关代码,一般在header.php这个文件里面,把
<?php echo home_url('/search/'); ?>
修改为:
保存,这样就能正常搜索中文了。
请登录后查看评论内容