WordPress 禁止搜索特定关键词的方法

Spoony 54.7m2021-10-18978 次点击1 人收藏2 人感谢
## 设置搜索页面读取行为
```
<?php
$host = $_SERVER['HTTP_REFERER'];
if (substr($host, 0, 16) != 'https://www.laobuluo.com/') {‌
header("location:http://跳转的其他页面或者网站");
exit;
} //判断是不是自己页面进入的
get_header();
?>
```
这里可以判断搜索行为是不是在自己网站搜索过去的,如果是外部行为直接跳转。

## 自定义屏蔽关键字
```
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('请不要搜索非法关键字');
//header("location:https://www.laobuluo.com");
}
}
}
}
}
```
将我们功能代码添加到网站 functions.php 文件中。

在 WordPress 后台【设置】【阅读】看到,可以添加屏蔽关键字,一行一个。然后我们在前台搜索看看,搜索是属于屏蔽关键字库的,就直接跳转,看不到结果。
收藏 ♥ 感谢
暂无回复

登录注册 后可回复。