如何注销WordPress自定义文章类型及自定义分类?
许多WordPress主题都带有自己的自定义文章类型,安装主题会迫使您处理那些额外的自定义文章类型和分类法。有些主题允许您禁用它们,有些则不允许。那么如何注销WordPress自定义文章类型及自定义分类?
首先,我们要找到文章类型或分类法名称。导航到自定义文章类型或自定义分类法(例如类别、标签),然后查看网址。
post_type 参数后面的值 faq 就是这个自定义文章类型名称,下面要用到。
taxonomy 参数的值 faq_category 就是自定义分类法的名称,下面要用到。
现在我们知道了文章类型/分类法的名称,我们可以从WordPress注销它。
注销自定义文章类型和自定义分类
从WordPress 4.5开始,有函数 unregister_post_type() 和unregister_taxonomy() 可以做到这一点 。在当前启用的 主题的functions.php中粘贴以下代码即可:
function wpdaxue_deregister_post_type(){
unregister_post_type( ‘faq’ ); //注销faq文章类型
unregister_taxonomy( ‘faq_category’); //注销 faq_category 分类法
}
add_action(‘init’,’wpdaxue_deregister_post_type’);
就是这样即可!只需用您的文章类型、分类法名称替换“faq”和“faq_category”即可。在WordPress管理后台中,您将看到自定义文章类型/分类法已经不存在了。
请注意,使用unregister_post_type()或unregister_taxonomy()函数不会在安装时进行清理–不会从数据库中删除任何数据。为此,您可以使用以下查询来手动删除这些记录:DELETE FROM wp_posts WHERE post_type ='[您的自定义文章类型],或者按照文章操作:删除 WordPress 中不再使用的自定义文章类型的文章数据。
最后要做的是再次保存您的固定链接来刷新它们。
从Avada主题中删除Portfolio和FAQ自定义文章类型
如果您正在运行Avada WordPress主题,并且想要删除作品集(Portfolio)和常见问答(FAQ)自定义文章类型及其自定义分类法,可以使用以下代码:
function wpdaxue_deregister_post_type(){
unregister_post_type( ‘avada_portfolio’ );
unregister_post_type( ‘avada_faq’ );
unregister_taxonomy( ‘portfolio_category’);
unregister_taxonomy( ‘portfolio_tags’);
unregister_taxonomy( ‘portfolio_skills’);
unregister_taxonomy( ‘faq_category’);
}
add_action(‘init’,’wpdaxue_deregister_post_type’);