Aqui está uma maneira rápida e suja de conseguir o que você quer.
Antecedentes
WordPress armazena seções do menu admin em um array global chamado $menu
. Para adicionar um separador, você adiciona um elemento à matriz $menu
usando um índice entre os índices das opções que deseja separar.
Usando a função add_admin_menu_separator()
Então eu escrevi uma função para encapsular a lógica para isso, chamei add_admin_menu_separator()
. Você precisará escolher um número de índice de matriz que seja maior que a opção após a qual você deseja adicionar um separador e, em seguida, chamar a função add_admin_menu_separator()
passando o referido índice como seu parâmetro.
Por exemplo:
add_admin_menu_separator(37);
A função add_admin_menu_separator()
em si
Aqui está a definição da função add_admin_menu_separator()
que você pode copiar no arquivo functions.php
do seu tema. Sim, é arcano, mas é o código que cria e usa a matriz global $menu
. (Os planos são para depreciá-lo, felizmente, mas isso provavelmente levará alguns anos.)
function add_admin_menu_separator($position) {
global $menu;
$index = 0;
foreach($menu as $offset => $section) {
if (substr($section[2],0,9)=='separator')
$index++;
if ($offset>=$position) {
$menu[$position] = array('','read',"separator{$index}",'','wp-menu-separator');
break;
}
}
ksort( $menu );
}
Encontrando o índice em $menu
que você precisa
Para descobrir qual número de índice você precisa, você pode fazer um var_dump()
de $GLOBALS['menu']
de dentro de um admin_init
hook. Aqui está um pequeno código que você pode colocar no arquivo functions.php
do seu tema temporariamente para ver quais são os valores. Isso só funcionará ao solicitar uma URL que começa com /wp-admin/
(mas certifique-se de fazer com o FTP e não o editor de temas integrado ou você perderá acesso ao seu site, pelo menos até obter acesso FTP a o arquivo functions.php
do seu tema!) :
add_action('admin_init','dump_admin_menu');
function dump_admin_menu() {
if (is_admin()) {
header('Content-Type:text/plain');
var_dump($GLOBALS['menu']);
exit;
}
}
Veja também:
BTW, você pode achar esses links úteis em geral para trabalhar com menus de administração:
Embora minhas classes de menu do administrador não ofereçam uma maneira fácil de adicionar separadores, acho que adicionarei isso agora quando tiver tempo.