问题描述

我没有成功搜查网络,应该是一件容易的事情。

我有一个高度定制的博客,页面,子页面和帖子。虽然我严重依赖类别和标签的使用,但我不希望他们在网址中可以看到。作者和日期类别也是一样。基本上如果有人试图访问这些页面,我不会抛出 404 错误。有人可以指向正确的方向吗?谢谢!

以下不可访问:

最佳解决方案

建立在 chrisguitarguy 的答案这里是一个快速的片段,你可以放在你的主题的 functions.php 文件做工作

add_action('template_redirect', 'wpse69948_archive_disabler');
function wpse69948_archive_disabler()
{
    if(is_tag() || is_category() || is_date() || is_author())
    {
        global $wp_query;
        $wp_query->set_404();
    }
}

次佳解决方案

我写了一个 plugin for this – 需要一些更新,但它仍然可以正常工作。

在 WordPress 知道要求哪个页面 (比如 template_redirect) 之后,本质上你可以在某些地方挂钩,使用 conditional functions 之一,或者使用 $wp_query->set_404()或者将用户重定向到您选择的页面。

要禁用类别,标签,作者和日期档案:

<?php
add_action('template_redirect', 'wpse69948_tag_disabler');
function wpse69948_tag_disabler()
{
    if(is_tag() || is_category() || is_date() || is_author())
    {
        global $wp_query;
        $wp_query->set_404();
    }
}

参考文献

注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。