前面的答案只是用CSS隐藏菜单项,正如@ezejielDFM指出的那样,它不会阻止用户添加帖子。
相反,注册自定义帖子类型时,需要设置create_posts
值到do_not_allow
(或false
在4.5以下的Wordpress版本中),并将map_meta_cap
到true
.
register_post_type( \'custom_post_type_name\', array(
\'capability_type\' => \'post\',
\'capabilities\' => array(
\'create_posts\' => \'do_not_allow\', // Prior to Wordpress 4.5, this was false
),
\'map_meta_cap\' => true, // With this set to true, users will still be able to edit & delete posts
));
如果
map_meta_cap
被忽略,默认为
false
尽管你已经禁用了
Add New 您也无法编辑或删除现有的帖子,因此请确保包含该值。
全部学分归this answer 堆栈溢出时。