Wordpress

Item personalizado no menu administrativo do WordPress

Como adicionar um item “link” personalizado no menu administrativo do WordPress.

Post simples ensinando a como adicionar um item no “admin side bar” adicionando uma função no arquivo functions.php do tema que está ativo.

Caso você tenha dúvidas de como trabalhar com arquivo functions.php acesse: Como editar o arquivo functions no WordPress

Arquivo functions aberto no editor

Uma vez você estando com arquivo aberto, adicionei o seguinte código no final:

add_action('admin_menu', 'example_admin_menu');
 
/**
* add external link to Tools area
*/function example_admin_menu() {
    global $submenu;
    $url = 'http://www.example.com/';
    $submenu['tools.php'][] = array('Example', 'manage_options', $url);
}

Altere o $url = ‘http://www.example.com/’; para a URL que você deseja.

Já na linha: $submenu[‘tools.php’][] = array(‘Example’, ‘manage_options’, $url);

O primeiro item do array “Example” é o texto que será exibido no menu.

Segundo item ‘manage_options‘ é o nível de permissão que usuário devera ter para visualizar o item.

Adicionando item no menu administrativo do WordPress

Você também pode adicionar uma nova opção no menu utilizando a função add_menu_page

Esta é a forma correta de adicionar um item no menu, pois você terá mais controle sobre o item permitindo também que Plugins reconheçam essa opção sem problemas de compatibilidade.

function add_custom_menu_item(){
    add_menu_page( 'Menu Item Title', 'Page Title', 'manage_options', 'page_slug', 'function', 'dashicons-icon', 1 );
}
add_action( 'admin_menu', 'add_custom_menu_item' );

function custom_menu_item_redirect() {

    $menu_redirect = isset($_GET['page']) ? $_GET['page'] : false;

    if($menu_redirect == 'page_slug' ) {
        wp_safe_redirect( home_url('/my-page') );
        exit();
    }

}
add_action( 'admin_init', 'custom_menu_item_redirect', 1 );

Altere os valores de acordo com a sua necessidade.

Qualquer dúvida fique a vontade para fazer um comentário ou entrar em contato.

Ver comentários

  • Muito bom seu website. O jeito que você coloca as palavras em seu artigo
    deixa tudo bastante como é natural e simples de apreender.

    Gostei muito. Trabalho com website de acompanhantes porém leio sobre tudo.

  • Você escreve muito bem e também espero que avance por bastante
    tempo porque conheci seu site hoje em dia mesmo.

    Até mas.

Post Recentes

Bloquear .env e .git no nginx: as regras que ainda deixam o arquivo vazar

Negar /.env no nginx parece resolvido até alguém pedir /wp-content/uploads/.env ou backup.sql. As regras que testei e os furos que…

13 horas atrás

Canonical errado no Yoast: corrigindo pelo filtro wpseo_canonical

O Search Console marca suas páginas 2, 3 e 4 como alternativas da página 1? Ajuste a tag canônica do…

16 horas atrás

Layout XML do Magento 2: remover bloco de módulo de terceiro

Um módulo de terceiro plantou um banner no topo da loja e você não quer desinstalar nada: tire o bloco…

1 dia atrás

Restaurar dump do Magento 2 em outro servidor: trocar a base_url no SQL

Importou o banco de produção e o site pula para o domínio antigo? Rode o UPDATE em core_config_data, limpe o…

2 dias atrás

Criar exceção customizada em PHP: quando estender Exception compensa

Seu catch trata pedido inexistente e banco fora do ar do mesmo jeito. Veja como criar exceção customizada em PHP…

3 dias atrás

DataProvider Magento 2: form do admin abre com campos vazios ao editar

O form do admin salva mas abre em branco na edição: veja o getData() indexado pelo id da entidade e…

4 dias atrás