无法删除通过OOP添加的元框

时间:2017-12-21 作者:neoDev

请不要将此问题标记为重复或拒绝投票,因为我尝试了所有文档(旧文档和新文档)、所有网站、论坛等上的所有代码,但没有任何东西对我有效。。。

我通过以下代码添加了元框:https://developer.wordpress.org/plugins/metadata/custom-meta-boxes/#oop

然后我转到一篇帖子,将select的值改为“Something”,并保存了帖子

现在我需要删除元框,但我不知道如何以任何方式。。。

remove_meta_box(\'wporg_box_id\', [\'post\', \'wporg_cpt\'], \'advanced\');
我试着用不同的events 喜欢admin_menudo_meta_boxes 如上所述here 例如,我尝试使用不同的context 喜欢advanced,normal 或无id 值,如wporg_box_id_wporg_meta_key
  • 我尝试了不同的screens 喜欢[\'post\', \'wporg_cpt\']\'post\'

    我实际得到它的方式是(在single.php中):

    echo \'<pre>\', print_r( get_post_meta( $post->ID ) ), \'</pre>\';
    
    它不断向我展示:

    Array
    (
        [_edit_last] => Array
            (
                [0] => 1
            )
    
        [_edit_lock] => Array
            (
                [0] => 1513844245:1
            )
    
        [_wporg_meta_key] => Array
            (
                [0] => something
            )
    
    )
    1
    

  • 1 个回复
    最合适的回答,由SO网友:Andrei 整理而成

    嗯,功能remove_meta_box 意味着只处理UI部分,它只从屏幕中删除metabox。

    如果还想删除该特定密钥的post元数据,则需要使用delete_post_meta 作用

    结束

    相关推荐

    Metaboxes in Loop

    我想在foreach循环中创建元盒。要求是,我有一个自定义帖子类型的数组,我想运行一个循环,为作为数组中键的帖子类型添加元盒。到目前为止,我已经开发了很多需求,但现在我被困在回调函数所在的部分add_meta_box() 将被调用。我用过call_user_func_array 调用回调函数并传递$key 作为参数,但它返回错误且不起作用。下面是我的代码:function rttk_create_boxes(){ $myarray = $this->rttk_get_posttype