前天晚上看到某个网友的留言关于需要将自己的WordPress网站在搜索关键字的时候屏蔽特殊关键字,不清楚这样做法的用意。以前国外主机优惠见过有这样子的插件可以解决的,只不过现在一时半会想不到是什么名字了,于是就搜索网络上有没有其他的解决办法。
这里直接通过无插件的办法自定义解决的,我们一起看看解决办法吧:
第一、添加Functions.php
add_action(\’admin_init\’, \’uicss_search_ban_key\’);
function uicss_search_ban_key() {
add_settings_field(\’uicss_search_key\’, \’搜索关键词屏蔽\’, \’uicss_search_key_callback_function\’, \’reading\’);
register_setting(\’reading\’, \’uicss_search_key\’);
}
function uicss_search_key_callback_function() {
echo \'<textarea name=\”uicss_search_key\” rows=\”10\” cols=\”50\” id=\”uicss_search_key\” class=\”large-text code\”>\’ . get_option(\’uicss_search_key\’) . \'</textarea>\’;
}
add_action(\’template_redirect\’, \’uicss_search_ban\’);
function uicss_search_ban() {
if (is_search()) {
global $wp_query;
$uicss_search_key = get_option(\’uicss_search_key\’);
if ($uicss_search_key) {
$uicss_search_key = str_replace(\”\\r\\n\”, \”|\”, $uicss_search_key);
$BanKey = explode(\’|\’, $uicss_search_key);
$S_Key = $wp_query->query_vars;
foreach ($BanKey as $Key) {
if (stristr($S_Key[\’s\’], $Key) != false) {
wp_die(\’请不要搜索特殊关键字\’);
exit;
}
}
}
}
}
这个脚本是在uicss.cn/bad-bot 这篇文章借鉴的,必须留下出处以示尊敬。添加完毕之后,我们再去WP后台看看。
第二、添加屏蔽关键字
在后台 设置-阅读 选项中,看到上图,添加关键字,一行一个关键字。添加保存之后,我们这样就可以解决特殊关键字的搜索屏蔽问题。