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

Cron do Magento 2 não roda: status missed e pending no cron_schedule

Pedido que não fatura e e-mail que não sai porque todo job fica missed: como ler a cron_schedule, conferir o…

13 horas atrás

Gerar slug de URL em PHP: acento, espaço e símbolo fora do endereço

Uma função curta em PHP 8.3 que transforma Camiseta Preta Tamanho GG em camiseta-preta-tamanho-gg, sem depender do locale do servidor.

1 dia atrás

Log de consentimento LGPD: a tabela MySQL que guarda a prova do aceite

O banner registra o clique só no navegador e some. Veja a tabela MySQL e o endpoint que gravam a…

2 dias atrás

Comando CLI Magento 2: criar a classe e registrar no di.xml

A classe do comando existe e o bin/magento list ignora ela. Falta o registro no di.xml: aqui vai a classe…

3 dias atrás

Traduzir o pt_BR.csv do Magento 2 em lote sem perder a coluna de origem

Como traduzir duas mil linhas do pt_BR.csv do Magento 2 lendo com fgetcsv e regravando com fputcsv, sem encostar na…

3 dias atrás

Variação não está disponível no WooCommerce: limpar transients e lookup

Produto variável respondendo "Desculpe, este produto não está disponível" mesmo com a variação ativa: limpe os transients do WooCommerce e…

4 dias atrás