|
发表于 2021-7-4 11:22:01
|
显示全部楼层
来自 中国福建三明
本帖最后由 myes 于 2021-7-4 11:39 编辑
除了禁止搜索页面收录,最好是能够禁止搜索超过10个字符的搜索关键词。另外可以屏蔽有敏感字的搜索
在WordPress当前主题的functions.php,添加以下代码,然后就可以在WordPress后台的“设置”-“阅读”(wp-admin/options-reading.php)的“搜索关键词屏蔽”,输入屏蔽的关键字,一个一行。
帖子:https://www.im286.net/thread-24267724-1.html
- //屏蔽恶意关键词搜索
- 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('请不要搜索非法关键字');
- }
- }
- }
- }
- }
复制代码
|
|