我的自定义分类不需要‘view’页面

时间:2013-04-01 作者:hepii110

我有一个带有自定义分类法的自定义帖子类型。我没有在页面上链接到分类法,但是任何人都可以从管理员那里访问分类法/术语url,并且可以看到未设置样式的列表页面。如何强制wp不使用该列表的默认布局(index.php)?最好的方法是什么?例如,我创建了一个分类法模板,并将其重定向到首页?

2 个回复
SO网友:chrisguitarguy

如果您只想“关闭”分类法中面向公众的部分(例如,仅用于分组),您可以在register it.

只需设置query_var 参数到false WordPress不会识别分类法页面请求,只会识别404。如果没有启用永久链接,这将起作用。

<?php
add_action(\'init\', \'wpse94193_register\');
function wpse94193_register()
{
    register_taxonomy(\'your_taxonomy\', \'your_post_type\', array(
        // other stuff here...
        \'query_var\' => false,
    ));
}
您还可以通过设置rewrite 参数为false(propsotto).

<?php
add_action(\'init\', \'wpse94193_register\');
function wpse94193_register()
{
    register_taxonomy(\'your_taxonomy\', \'your_post_type\', array(
        // other stuff here...
        \'rewrite\'   => false,
        \'query_var\' => false,
    ));
}
如果您确实需要允许登录用户查看分类法页面(从问题中看不出来),那就不同了。

SO网友:Pat J

查看Template Hierarchy. 如果调用自定义分类法custom_taxonomy, 您应该能够创建一个名为taxonomy-custom_taxonomy.php, 它可以包含,例如:

<?php
    wp_redirect( home_url() );
    exit;  // stop processing since we\'re redirecting
?>
(请参见Codex page for wp_redirect() 有关在WordPress中重定向的详细信息。)

结束

相关推荐

提交表单后WP_REDIRECT不起作用

我在插入帖子后使用此重定向。它不工作,只刷新表单所在的页面。我知道$pid正在获取帖子ID,那么问题是什么?这是我处理表单提交的php代码的最后一部分。$pid = wp_insert_post($new_post); update_post_meta($pid,\'domain\',$domain); update_post_meta($pid,\'keywords\',$keywords); wp_redirect( get_permalink($pid)