这是一个非常实用的 SEO 控制策略:让 “北京” 分类目录页面可以被 Google 索引,而其他分类目录页面(如“上海”、“天津”等)则禁止索引。你可以通过以下几种方式来实现这个效果:
✅ 方法一:使用 WordPress 主题中修改 category.php 模板(推荐)在你的主题中(通常是 wp-content/themes/你的主题/),找到或创建 category.php 文件,在 <head> 中添加以下代码: <?php
$current_cat = get_queried_object();
if ($current_cat && $current_cat->slug !== 'beijing') {
echo '<meta name="robots" content="noindex, follow">';
}
?>这个逻辑是: 如果当前分类的 slug 不是 beijing,就在页面添加 <meta name="robots" content="noindex, follow">,禁止 Google 索引但允许抓取链接。 如果是 beijing,则不加任何限制,默认允许索引。
✅ 方法二:使用 WordPress SEO 插件(如 Yoast SEO / Rank Math)如果你在用 Yoast SEO 插件,可以手动或自动设置: 1. 手动设置(适用于分类不多的情况):2. 自动设置(需要开发):你可以添加一个代码片段,通过钩子 wpseo_robots 控制: add_filter('wpseo_robots', function($robots) {
if (is_category()) {
$cat = get_queried_object();
if ($cat && $cat->slug !== 'beijing') {
return 'noindex,follow';
}
}
return $robots;
});这个可以加在 functions.php 中,自动控制 Yoast SEO 输出的 meta robots 标签。
✅ 方法三:使用 robots.txt 文件控制(不太推荐)你可以写成: User-agent: *
Disallow: /category/
Allow: /category/beijing/注意:这种方法并不总是有效,尤其对 Google,因为 robots.txt 会阻止抓取整个 URL,甚至不能抓 meta 标签。所以这种方法只能作为补充,不推荐单独使用。
🔍 效果验证设置完成后,可以访问你的分类页: https://yoursite.com/category/beijing/ 应该可被索引(没有 <meta name="robots" content="noindex">)。 https://yoursite.com/category/shanghai/ 应该含有 <meta name="robots" content="noindex, follow">。
你也可以在 Google Search Console 或 “查看网页源代码” 中验证。
需要我帮你生成一个完整的函数放到 functions.php 中吗?或者你用的是哪一个 SEO 插件?我可以帮你定制代码。 |