找了一会终于找到了部分文章屏蔽搜索引擎的教程,下面就搬过来记录一下。
WordPress针对搜索引擎屏蔽特定的文章,使用方法也很简单,直接放到当前主题的functions.php中即可使用。
// 文章/页面编辑页面添加选项 function ludouse_add_custom_box() { if (function_exists('add_meta_box')) { add_meta_box('ludou_allow_se', '搜索引擎', 'ludou_allow_se', 'post', 'side', 'low'); add_meta_box('ludou_allow_se', '搜索引擎', 'ludou_allow_se', 'page', 'side', 'low'); } } add_action('add_meta_boxes', 'ludouse_add_custom_box'); function ludou_allow_se() { global $post; //添加验证字段 wp_nonce_field('ludou_allow_se', 'ludou_allow_se_nonce'); $meta_value = get_post_meta($post->ID, 'ludou_allow_se', true); if($meta_value) echo '<input name="ludou-allow-se" type="checkbox" checked="checked" value="1" /> 屏蔽搜索引擎'; else echo '<input name="ludou-allow-se" type="checkbox" value="1" /> 屏蔽搜索引擎'; } // 保存选项设置 function ludouse_save_postdata($post_id) { // 验证 if ( !isset( $_POST['ludou_allow_se_nonce'])) return $post_id; $nonce = $_POST['ludou_allow_se_nonce']; // 验证字段是否合法 if (!wp_verify_nonce( $nonce, 'ludou_allow_se')) return $post_id; // 判断是否自动保存 if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) return $post_id; // 验证用户权限 if ('page' == $_POST['post_type']) { if ( !current_user_can('edit_page', $post_id)) return $post_id; } else { if (!current_user_can('edit_post', $post_id)) return $post_id; } // 更新设置 if(!empty($_POST['ludou-allow-se'])) update_post_meta($post_id, 'ludou_allow_se', '1'); else update_post_meta($post_id, 'ludou_allow_se', '0'); } add_action('save_post', 'ludouse_save_postdata'); // 对于设置不允许抓取文章和页面 // 禁止搜索引擎抓取,返回404 function do_ludou_allow_se() { // 本功能只对文章和页面有效 if(is_singular()) { global $post; $is_robots = 0; $ludou_allow_se = get_post_meta($post->ID, 'ludou_allow_se', true); if(!empty($ludou_allow_se)) { // 下面是搜索引擎Agent判断关键字数组 // 有点简单,自己优化一下吧 $bots = array( 'Baiduspider', 'Googlebot', 'sogou spider', 'Sogou web spider', 'YodaoBot', 'Bingbot', 'Slurp', 'MSNBot', 'yahoo-blogs', 'psbot', 'Yandex', 'Yeti', 'blogsearch', 'EasouSpider', 'Mediapartners-Google' ); $useragent = $_SERVER['HTTP_USER_AGENT']; foreach ($bots as $lookfor) { if (stristr($useragent, $lookfor) !== false) { $is_robots = 1; break; } } // 如果当前文章/页面禁止搜索引擎抓取,返回404 替换到下面 status_header(404); if($is_robots) { //header('HTTP/1.1 301 Moved Permanently'); 状态码为301 //header("Location:https://www.119xiazai.com",TRUE,301); 状态码为301 header("location:https://www.119xiazai.com"); exit; } } } } add_action('wp', 'do_ludou_allow_se');
在WordPress后台文章和页面的编辑页面,右边栏底部就可以看到“搜索引擎”的按钮,打钩即可。
还有一种方法就是直接在robots.txt里面禁止某些蜘蛛爬取,不过有些蜘蛛可能不会遵循规则哦。