Tendo lido em outro lugar na pilha de dois plugins WP forçando posições de menu idênticas (com a probabilidade de um não aparecer), estou pensando em como posso controlar a posição dos itens de menu adicionados pelos plugins.
Eu já uso uma função que parece lidar com esses itens de submenu em 'configurações' e outra função para reordenar os itens padrão (postagens, páginas, temas, plugins, configurações etc.) 'nível superior' - mas que não altera o posicionamento desses itens adicionados por plug-ins.
function custom_menu_order() {
return array(
//Add items here in desired order.
);
}
add_filter( 'custom_menu_order', '__return_true' );
add_filter( 'menu_order', 'custom_menu_order' );
Como exemplo, dos dois itens de menu de nível superior adicionados pelo WooCommerce, um aparece acima do item adicionado pelo ContactForm7 e o outro abaixo, e seria bom reordená-los adequadamente - e também, para poder reorganizar melhor os itens que não força a posição do menu e aparece na parte inferior.
Acho que geralmente funciona bem para reordenar os itens padrão e 'edit.php? Post_type = ...', mas aqueles com 'admin.php? Page = ...' não são reordenados.
Quando minha função de reordenar é desativada, os dois itens do WooCommerce ('edit.php? Post_type = product' e 'edit.php? Post_type = shop_order') se agrupam conforme o esperado, mas quando a função é reativada, eles são divididos por ContactForm7 ('admin.php? page = wpcf7').
E um ('edit.php? Post_type = shop_order') dos CPTs do WooCommerce não será reordenado - embora o outro ('edit.php? Post_type = product') o faça.
As respostas existentes são boas, mas se você adicionasse um novo tipo de postagem personalizado, teria que reeditar essas funções novamente.
Para consertar isso, desenvolvi essa pequena função. Basta definir seu
$new_positions
interior namy_new_menu_order
função:fonte
Ao criar um tipo de postagem com register_post_type (), você pode definir a posição do menu:
Se os itens tiverem a mesma posição de menu, eles serão classificados em ordem alfabética.
no seu próprio plugin, você pode definir o nível. se você estiver tentando alterar a posição do menu de um plug-in que não criou, muitos deles podem ser plugáveis ou você pode editar as chamadas deles.
fonte