Categorias
Programação Wordpress

Mostrar um menu de navegação usando um shortcode

Quando queremos colocar um menu de navegação no conteúdo de uma página ou post, a solução óbvia é usar um shortcode, mas ele não existe como padrão no wordpress…

Mas podemos ultrapassar essa falta criando o nosso próprio shortcode no wordpress! Com poucas linhas de código podemos ter um shortcode para o que pretendemos, veja:

<?php
function print_menu_shortcode($atts, $content = null) {
    extract(shortcode_atts(array( 'name' => null, ), $atts));
    return wp_nav_menu( array( 'menu' => $name, 'echo' => false ) );
}
add_shortcode('menu', 'print_menu_shortcode');
?>

Coloque agora o código no arquivo ‘functions.php’, e use [menu name=”main-menu”] para chamar o menu em seu conteúdo (página ou post), substituindo “main-menu” com slug (nome) do menu que pretende usar, é claro.

Você pode adaptar o código para aceitar qualquer um dos outros argumentos disponíveis para wp_nav_menu() e assim ter algo mais completo.

Espero que gostem e que vos seja útil, um abraço e bons desenvolvimentos!



Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *