Início » » WordPress Tutorials » Nova função Wordpress wp_page_menu()

Nova função Wordpress wp_page_menu()

O Wordpress 2.7 trouxe grandes alterações em todos os aspectos, algumas incluem template tags como a wp_page_menu() que permite ajuda a simplificar a criação de uma lista de páginas estáticas incluindo um link para a página inicial.

A função base é algo como:
<?php wp_page_menu(); ?>

A função conta com paramentos para ajudar na personificação:

sort_column
Ordena a lista de páginas numa ordem especifica. Os valores que podes usar com este parametro são post_name, post_title, post_date, menu_order, post_modified, ID e post_author.

menu_class
Define a class CSS usada no div que envolve a lista de páginas

echo
Esta variavel boleana define se o menu é visivel ou se apenas retorna valores para serem usados na programação PHP. O valor 1 significa que o menu é para output apenas o valor 0 define que o menu é usado com outros blocos de programação.

show_home
Cria um link para a página inicial. O valor 1 cria o link, o valor 0 não o cria.

link_before
Define o texto anterior ao código como texto âncora

link_after
Define o texto a seguir ao código como texto âncora

Como usar wp_page_menu()

Funciona tal e qual as outras funções do WordPress:

<?php wp_page_menu('sort_column=menu_order&menu_class=navegacao&show_home=1&echo=1'); ?>

Este código vai gerar um código HTML do género

<div class="navegacao">
<ul>
<li><a href="http://muiomuio.net/">Home</a></li>
<li><a href="http://muiomuio.net/about/">About</a></li>
<li><a href="http://muiomuio.net/contacto/">Contacto</a></li>
<li><a href="http://muiomuio.net/pesquisa/">Pesquisa</a></li>
</ul>
</div>

Este menu é o menu das páginas criadas no WordPress. Para garantir que o theme funciona em todas as versões do WordPress pode-se fazer a verificação com a função de php function_exists():

<?php
if (function_exists(wp_page_menu)) :
wp_page_menu('sort_column=menu_order&menu_class=nav&show_home=1&echo=1');
else :
?>
<div class="nav">
<ul>
<li <?php if (is_front_page()) echo 'class="current_page_item"' ?>><a href="< ?php bloginfo('url') ?>">Home
<?php wp_list_pages('sort_column=menu_order&title_li='); ?>
</ul>
</div>
< ?php endif; ?>

O código verifica se a função existe, caso não exista usa outro código para mostrar o menu de páginas estáticas recorrendo á função wp_list_pages().


Subscreve as Feeds

RSS Comentários Comentários

  1. Muito boa dica!!!

  2. Oi Alessandro,

    Valeu a dica!
    … mas dá uma conferida na compatibilidade do teu tema: este post ficou com os códigos sobrepostos no Firefox/Ubuntu (ambos última versão). Aviso porque também ando maluca com essa babilônia de browsers!

    Até mais.

  3. Iiiii, desculpa Mário, troquei os nomes…

    #fail. Me perdoa..

  4. Parabéns pelo Blog.

    Sou principiante no WP, e na verdade gostaria de saber como faço para modificar/atualizar a lista do widget META/ADMINISTRAÇÃO do meu blog.

    Gostaria de poder colocar outros ou mesmo modicar os títulos.

    Agradecido.

Tags HTML suportadas nos comentários:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>