Wordpress:仅为帖子禁用标记

时间:2014-03-27 15:13:18

标签: php wordpress tags

我目前正在为Wordpress 3.8.1开发一个主题。因为我的主题不会显示任何标签,所以我想要禁用它们(仅限帖子,而不是自定义帖子类型)。但是我该怎么做?我试过这个,但显然,它没有做任何事情:

register_taxonomy('post_tag', null);

要明确:我不只是想隐藏模板文件中的标签,但我想完全禁用它们,所以在后端,帖子下没有标签的菜单项。

甚至可能吗?希望如此。谢谢你的帮助!

更新

此外,我尝试了以下操作,没有任何影响:

register_taxonomy('post_tag', array());

global $wp_taxonomies;
$taxonomy = 'post_tag';
if(taxonomy_exists($taxonomy))
    unset($wp_taxonomies[$taxonomy]);

在编辑帖子时都会删除标签框,但菜单中的链接仍然指向标签列表!

2 个答案:

答案 0 :(得分:16)

从WordPress 3.7开始,有一个unregister_taxonomy_for_object_type函数可用于这种事情。

在你的情况下:

// Remove tags support from posts
function myprefix_unregister_tags() {
    unregister_taxonomy_for_object_type('post_tag', 'post');
}
add_action('init', 'myprefix_unregister_tags');

查看此功能的文档here

答案 1 :(得分:8)

将此代码粘贴到您的functions.php

add_action( 'admin_menu', 'myprefix_remove_meta_box');
function myprefix_remove_meta_box(){
   remove_meta_box( 'tagsdiv-post_tag','post','normal' );
}

tags元框的类别为tagsdiv-post_tag,因此会删除tags元框

OR

add_action('init', 'remove_tags');
function remove_tags(){
    register_taxonomy('post_tag', array());
}

如果你想完全删除它