Created
June 29, 2011 08:49
Revisions
-
toscho created this gist
Jun 29, 2011 .There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,79 @@ <?php # -*- coding: utf-8 -*- /** * Create a nav menu with very basic markup. * * @author Thomas Scholz http://toscho.de * @version 1.0 */ class T5_Nav_Menu_Walker_Simple extends Walker_Nav_Menu { /** * Start the element output. * * @param string $output Passed by reference. Used to append additional content. * @param object $item Menu item data object. * @param int $depth Depth of menu item. May be used for padding. * @param array $args Additional strings. * @return void */ public function start_el( &$output, $item, $depth, $args ) { $output .= '<li>'; $attributes = ''; ! empty ( $item->attr_title ) // Avoid redundant titles and $item->attr_title !== $item->title and $attributes .= ' title="' . esc_attr( $item->attr_title ) .'"'; ! empty ( $item->url ) and $attributes .= ' href="' . esc_attr( $item->url ) .'"'; $attributes = trim( $attributes ); $title = apply_filters( 'the_title', $item->title, $item->ID ); $item_output = "$args->before<a $attributes>$args->link_before$title</a>" . "$args->link_after$args->after"; // Since $output is called by reference we don't need to return anything. $output .= apply_filters( 'walker_nav_menu_start_el' , $item_output , $item , $depth , $args ); } /** * @see Walker::start_lvl() * * @param string $output Passed by reference. Used to append additional content. * @return void */ public function start_lvl( &$output ) { $output .= '<ul class="sub-menu">'; } /** * @see Walker::end_lvl() * * @param string $output Passed by reference. Used to append additional content. * @return void */ public function end_lvl( &$output ) { $output .= '</ul>'; } /** * @see Walker::end_el() * * @param string $output Passed by reference. Used to append additional content. * @return void */ function end_el( &$output ) { $output .= '</li>'; } }