WordPress如何纯代码如何实现屏蔽恶意关键词搜索?

重要的人越来越少,剩下的越来越重要。拼你想要的,争你没有的。要想人前显贵,就得背后遭罪。最穷不过要饭,不死终会出头!

网站的内部搜索功能会被恶意的用户利用,在站内搜索中输入敏感关键词,导致搜索引擎不被收录的问题。那么我们的 WordPress 站点如何纯代码实现屏蔽恶意关键词搜索呢?具体实现方法如下:

1、将以下代码添加到当前使用的主题 functions.php 文件的最后一个 ?> 的前面。

//屏蔽恶意关键词搜索
add_action('admin_init', 'php_search_ban_key');
function php_search_ban_key() {
add_settings_field('php_search_key', '搜索关键词屏蔽', 'php_search_key_callback_function', 'reading');
register_setting('reading','php_search_key');
}

function php_search_key_callback_function() {
echo '<textarea name="php_search_key" rows="10" cols="50" id="php_search_key" class="large-text code">' .

get_option('php_search_key') . '</textarea>';
}
add_action('template_redirect', 'php_search_ban');
function php_search_ban(){
if (is_search()) {
global $wp_query;
$php_search_key = get_option('php_search_key');
if($php_search_key){
$php_search_key = str_replace("\r\n", "|", $php_search_key);
$BanKey = explode('|', $php_search_key);
$S_Key = $wp_query->query_vars;
foreach($BanKey as $Key){
if( stristr($S_Key['s'],$Key) != false ){
wp_die('请不要搜索非法关键字');
}
}
}
}
}
原文的函数名是 51php_search_ban_key,但是会报错:syntax error, unexpected '51' (T_LNUMBER), expecting identifier (T_STRING),所以我就直接将 51 去掉了。

2、登录 WordPress 网站后台 >> 设置(Settings) >> 阅读 >> 找到搜索关键词屏蔽 >> 添加您想屏蔽的搜索关键词,如网赚、股票等,每个关键词一行 >> 点击【保存更改】按钮即可。具体如下图所示:

成功填写并屏蔽关键词之后,在前台输入已经屏蔽的关键词就会提示“请不要搜索非法关键字”,至于详细的样式大家可以自行 DIY。

内容整理自:无忧主机 - http://www.51php.com/wordpress/21452.html

到此这篇关于WordPress如何纯代码如何实现屏蔽恶意关键词搜索?就介绍到这了。做好手中事珍惜眼前人。更多相关WordPress如何纯代码如何实现屏蔽恶意关键词搜索?内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!

标签: WordPress