删除精选图像元框

时间:2010-12-06 作者:matt

如何删除特色图像元框?我试过使用remove_meta_box 函数并指定框ID,但它似乎不像其他本机元框那样工作。

以下是我尝试的特定代码:

add_action( \'admin_menu\', \'remove_thumbnail_box\' );

function remove_thumbnail_box() {
    remove_meta_box( \'postimagediv\', \'post\', \'side\' );
}

4 个回复
最合适的回答,由SO网友:PNMG 整理而成

我还没有时间测试这个,但这个看起来应该对你有用。

add_action(\'do_meta_boxes\', \'remove_thumbnail_box\');

function remove_thumbnail_box() {
    remove_meta_box( \'postimagediv\',\'post\',\'side\' );
}
检查此more info.

Edit: 这里的主要变化是,您需要附加do\\u meta\\u框的功能,而不是admin\\u菜单

SO网友:Jan Fabry

帖子缩略图作为此帖子类型支持的内容添加到帖子类型中。如果要从帖子类型中删除帖子缩略图功能,可以调用remove_post_type_support(). 常规帖子也被定义为自定义帖子类型,因此它也应该适用于它们。

add_action( \'init\', \'wpse4936_init\', 100 /* Something high, to make sure all post types are registered */ );
function wpse4936_init()
{
    remove_post_type_support( \'post\', \'thumbnail\' );
    // Or remove it for all registerd types
    foreach ( get_post_types() as $post_type ) {
        remove_post_type_support( $post_type, \'thumbnail\' );
    }
}

SO网友:SurferJoe

add_action(\'do_meta_boxes\', \'remove_thumbnail_box\');
function remove_thumbnail_box($post_type) {
    remove_meta_box( \'postimagediv\', \'post.php\', \'side\' );
}
Wordpress似乎只在调用action do\\u meta\\u Box时禁用了特色图片,还使用了“post.php”作为帖子类型,而不是“post”,我不知道这是为什么,因为它与文档相矛盾。警告:do\\u meta\\u框似乎在函数wp\\u get\\u current\\u user()可用之前启动,因此您无法根据用户类型禁用,要么全部禁用,要么什么都不禁用。也许其他人知道一个工作环境。

SO网友:Pikamander2

您可以在创建自定义帖子类型后立即将其删除,也可以稍后使用类似于init.

Option #1: 创建自定义帖子类型后立即将其删除:

$args = []; //your args here

register_post_type(\'my_post_type\', $args);

remove_post_type_support(\'my_post_type\', \'thumbnail\');
Option #2: 将其从现有帖子类型中删除:

function remove_thumbnail_support()
{
    remove_post_type_support(\'my_post_type\', \'thumbnail\');
}

add_action(\'init\', \'remove_thumbnail_support\', 11);

结束

相关推荐

使用自定义类别Metabox在管理中未保存的页面类别?

我对此不知所措。您是否看到以下特定于noindex、nofollow复选框的代码有任何错误?元框可以很好地绘制到屏幕上,但值不会粘住。自定义页面标题和自定义摘录的代码工作正常。// =================== // = POST OPTION BOX = // =================== add_action(\'admin_menu\', \'my_post_options_box\'); function my_post_op