如何阻止WordPress创建标签页?

时间:2021-11-16 作者:shelbypereira

我使用内置的wp标签功能按主题对帖子进行分组,然后使用wp\\u查询根据自定义设计显示帖子。我不需要在wordpress中默认创建标签页,我希望它们根本不创建(理想情况下),或者能够向帖子添加noindex meta,因为它们不应该单独索引。有没有办法做到这一点?

编辑:我考虑的另一种可能性是从网站地图中排除所有匹配的URL,例如排除所有URL匹配行/标记/*。我使用Yoast插件,但我没有看到任何允许我进行这种排除的过滤器。

1 个回复
最合适的回答,由SO网友:Pat J 整理而成

要从自动生成的标记存档页面重定向,可以检查is_tag()template_redirect 操作挂钩,并使用重定向wp_redirect() 如果是:

add_action( \'template_redirect\', function() {
    if ( is_tag() ) {
        // Currently redirects to the site\'s home page.
        wp_redirect( \'/\' );
        // Use the 301 Permanent redirect if desired.
        // wp_redirect( \'/\', 301 );
        exit;
    }
} );
要从WordPress生成的站点地图中排除标记(问题中的计划B),可以使用wp_sitemaps_taxonomies 滤器

add_filter( \'wp_sitemaps_taxonomies\', function( $taxonomies ) {
    if ( ! empty( $taxonomies[\'post_tag\'] ) ) {
        unset( $taxonomies[\'post_tag\'] );
    }
    return $taxonomies;
} );

相关推荐

Show all Tags in each post

我创建了一个名为“Project”的新帖子类型。我在其中注册了1个分类“标记”,如下所示:https://pastecode.xyz/view/844258b1我在post type“Project”中的1篇文章中输入了标签。如果要输入文章,它将显示该文章中的所有标记。谁能帮帮我吗。非常感谢。