Você está procurando uma maneira de exibir as subpáginas nos menus? Embora provavelmente exista um plugin para isso, criamos um trecho de código rápido que você pode usar para adicionar automaticamente subpáginas aos menus no WordPress.
Instruções:
Tudo o que você precisa fazer é adicionar este código ao arquivo functions.php do seu tema ou a um plugin específico do site:
/**
* Auto add subpages to nav menus
*/
function custom_walker_nav_menu_start_el ( $item_output, $item, $depth, $args) {
// filter only page menu items
if( $item->object == 'page' ) {
// set args
$args = array(
'depth' => 1,
'child_of' => $item->object_id,
'echo' => 0,
'title_li' => ''
);
// check for children
$children = wp_list_pages( $args );
// append them as list if any
if ( $children )
$item_output = $item_output . '<ul class="children" >' . $children . '</ul>';
}
return $item_output;
}
add_filter( 'walker_nav_menu_start_el', 'custom_walker_nav_menu_start_el', 10, 4 );
Observação: Se esta é a sua primeira vez adicionando trechos de código no WordPress, consulte nosso guia sobre como adicionar trechos de código corretamente no WordPress, para não quebrar acidentalmente seu site.
Se você gostou deste trecho de código, considere conferir nossos outros artigos no site, como: 11 melhores plugins do WordPress para escritores e como criar um formulário de envio de post para convidados no WordPress.
Isso ainda está funcionando bem em setembro de 2021. No entanto, isso imporá um problema se essas páginas já tiverem sido adicionadas manualmente também.
Portanto, use este trecho quando quiser que as páginas filhas apareçam sob a posição do menu de sua página pai. Mas remova os itens de menu adicionados manualmente em Aparência.
Olá Rik, obrigado pelo conselho.