Encontre a função de retorno de chamada para o metabox da taxonomia personalizada

4

Estou procurando uma maneira de mover meu metabox de taxonomia personalizada (à direita) para a área de postagem (o meio). Estou ciente que você pode simplesmente arrastar e soltar, mas eu quero na área de postagem por padrão para novos usuários.

Minha abordagem foi removê-lo usando remove_meta_box() e adicioná-lo novamente usando add_meta_box() . O problema é que não sei qual função de retorno chamar ao adicioná-lo novamente.

/* Remove movies metabox from sidepanel */
function hide_metabox(){
    remove_meta_box( 'tagsdiv-movies', 'movies' , 'side' );
}
add_action( 'admin_menu' , 'hide_metabox' );


/* Add back movies metabox, but in post area */
add_action('add_meta_boxes', 'add_back_post');
    function add_back_post(){
    /* Not sure what to put as the thrid argument */
    add_meta_box('tagsdiv-movies','Movies', 'WHAT_CALLBACK_ARG', 'movies', 'normal', 'high');
}

Personalizadometabox"filmes"

Como nota lateral, criei a taxonomia usando a IU do tipo de postagem personalizada (interface do usuário do CPT) que basicamente segue o procedimento padrão ao criar uma taxonomia personalizada.

Não tenho certeza se isso responde à minha pergunta, pois não acompanho as informações fornecidas aqui: Existe uma função de retorno de chamada predefinida para categorias personalizadas? .

    
por Dom 26.02.2018 / 23:26

1 resposta

5

O retorno de chamada necessário para taxonomias não hierárquicas é post_tags_meta_box .

O retorno de chamada necessário para taxonomias hierárquicas é post_categories_meta_box .

Para o seu exemplo, o código seria:

/* Remove movies metabox from sidepanel */
function hide_metabox(){
    remove_meta_box(
        'tagsdiv-movies',
        'your-post-type' ,
        'side'
    );
}
add_action( 'admin_menu' , 'hide_metabox' );


/* Add back movies metabox, but in post area */
add_action('add_meta_boxes', 'add_back_post');
    function add_back_post(){
    add_meta_box(
        'tagsdiv-movies',
        'Movies',
        'post_tags_meta_box',
        'your-post-type',
        'normal',
        'high',
        array( 'taxonomy' => 'movies' )
    );
}

Uma outra variável importante é o ID do metabox. No seu exemplo, tagsdiv-movies segmenta um metabox para uma taxonomia não hierárquica com slug movies . Se essa mesma taxonomia fosse hierárquica, o ID seria moviesdiv .

    
por Milo 27.02.2018 / 03:54