Pues por suerte la tenía aquí a mano...
Código PHP:
Ver original<?php
/**
* Custom Footer Menu
*/
function footer_nav_menu() {
global $current_page_class, $link_id, $current_page;
$menu_name = 'secondary';
if ( ( $locations = get_nav_menu_locations
() ) && isset ( $locations[ $menu_name ] ) ) : $menu = wp_get_nav_menu_object( $locations[ $menu_name ] );
$menu_items = wp_get_nav_menu_items( $menu->term_id );
$menu_list = '<div id="access-footer" class="menu-footer">';
$menu_list .= '<ul id="menu-footer-navigation" class="menu">';
foreach ( $menu_items as $menu_item ) :
$item_title = $menu_item->title;
$item_url = $menu_item->url;
$item_id = $menu_item->ID;
$link_id = $menu_item->object_id;
$menu_page = get_page_by_title( $item_title );
// Current page item
if ( $current_page->ID == $link_id ) :
$current_menu_item = $current_page_class;
else :
$current_menu_item = '';
endif;
// We create our own ID for every item
$menu_page_id = strtolower( str_replace( array( ' ', 'á', 'é', 'í', 'ó', 'ú', 'ñ'), array( '-', 'a', 'e', 'i', 'o', 'u', 'n' ), $menu_page->post_title ) ); $menu_list .= '<li class="menu-item"><h3 id="footer-item-'. $menu_page_id .'" class="widget-title footer-h-title"><a href="'. $item_url .'" class="'.$current_menu_item.'">'. $item_title .'</a></h3></li>';
endforeach;
$menu_list .= '</ul>';
$menu_list .= '</div>';
?>
<?php
endif;
return $menu_list;
}
?>
La función lo que hace es, por ejemplo, a un elemento del menú llamado "Quiénes Somos", le agrega el elemento
id="footer-item-quienes-somos". Claro, que con el cliente habíamos acordado los elementos del menú y no habría cambios, pero en caso de haberlos, era cuestión de crear el ícono y agregarlo al css.
En esta función hay unas variables globales que creo que eran para mostrar una clase determinada en el elemento del menú, en dependencia de qué lugar del sitio se encontraba, pero ya eso es harina de otro costal...
Saludos, espero te funcione...
EDITO: La variable $menu_name guarda el valor del menú al que le aplicas esta función