16Abr 2013 0 Comments */?>

Como corregir y añadir class a los menus dinámicamente

Categorías: Tips de wordpress, Wordpress - Tags:

Hoy les voy a mostrar el filtro que les permite modificar las clases de un menú WordPress facilmente. Por ejemplo si crean un custom post type llamado “Testimonios” y quieren agregarlo al menu lo harían de forma manual. Pero para que wordpress se entere de que está dentro de ese menu item y lo marque como current-menu-item hay que hacer lo siguiente:

Dentro de functions.php

add_filter( 'nav_menu_css_class', 'additional_active_classes', 10, 2 );
function additional_active_item_classes($classes = array(), $menu_item = false){
    global $wp_query,$search_placeholder;

    if ( $menu_item->title == 'Testimonios' && ( is_page('testimonials') || get_post_type() == 'testimonials' ) ) {
        $classes[] = 'current-menu-item';
    }
 
    return $classes;
}

Este filtro se ejecuta a la hora de imprimir los items del menú. Si el menu se llama “Testimonios” y en ese momento estamos en la página testimonials o usando el post type de testimonials , se agrega la clase current-menu-item.

Con este filtro se pueden hacer muchas cosas curiosas, esta es una de ellas. Saludos!

Damián Logghe

Programador freelancer y emprendedor en sueños. Contento de ser mi jefe y poder hacer lo que me gusta. WordPress es mi principal fuente de ingreso y me escribo tanto para ayudar como para tener una guia de memoria. Quieres contratarme? Déjame un mensaje.

More Posts - Website

Follow Me:
TwitterFacebookLinkedInGoogle Plus