¿Está buscando una forma de mostrar las subpáginas en los menús? Si bien probablemente exista un plugin para esto, hemos creado un fragmento de código rápido que puede usar para agregar automáticamente subpáginas a los menús en WordPress.
Instrucciones:
Todo lo que tienes que hacer es agregar este código al archivo functions.php de tu tema o a un plugin específico del sitio:
/**
* 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 );
Nota: Si es la primera vez que agregas fragmentos de código en WordPress, consulta nuestra guía sobre cómo agregar fragmentos de código correctamente en WordPress, para que no rompas accidentalmente tu sitio.
Si le gustó este fragmento de código, considere revisar nuestros otros artículos en el sitio como: 11 mejores plugins de WordPress para escritores y cómo crear un formulario de envío de publicaciones de invitados en WordPress.
Esto todavía funciona bien en septiembre de 2021. Sin embargo, esto impondrá un problema si esas páginas ya se agregaron manualmente también.
Así que use este fragmento cuando quiera que las páginas secundarias aparezcan debajo de la posición del menú de su página principal. Pero elimine los elementos del menú agregados manualmente de Apariencia.
Hola Rik, gracias por el consejo.