Make WordPress Core


Ignore:
Timestamp:
09/12/2013 06:47:27 PM (11 years ago)
Author:
helen
Message:

Inline docs for hooks in wp-includes/nav-menu-template.php. props Faison. see #25229.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/nav-menu-template.php

    r24634 r25410  
    7373        $classes[] = 'menu-item-' . $item->ID;
    7474
     75        /**
     76         * Filter the CSS class(es) applied to a menu item's <li>.
     77         *
     78         * @since 3.0.0
     79         *
     80         * @param array $classes The CSS classes that are applied to the menu item's <li>.
     81         * @param object $item The current menu item.
     82         * @param array $args Arguments from {@see wp_nav_menu()}.
     83         */
    7584        $class_names = join( ' ', apply_filters( 'nav_menu_css_class', array_filter( $classes ), $item, $args ) );
    7685        $class_names = $class_names ? ' class="' . esc_attr( $class_names ) . '"' : '';
    7786
     87        /**
     88         * Filter the ID applied to a menu item's <li>.
     89         *
     90         * @since 3.0.1
     91         *
     92         * @param string The ID that is applied to the menu item's <li>.
     93         * @param object $item The current menu item.
     94         * @param array $args Arguments from {@see wp_nav_menu()}.
     95         */
    7896        $id = apply_filters( 'nav_menu_item_id', 'menu-item-'. $item->ID, $item, $args );
    7997        $id = $id ? ' id="' . esc_attr( $id ) . '"' : '';
     
    87105        $atts['href']   = ! empty( $item->url )        ? $item->url        : '';
    88106
     107        /**
     108         * Filter the HTML attributes applied to a menu item's <a>.
     109         *
     110         * @since 3.6.0
     111         *
     112         * @param array $atts {
     113         *     The HTML attributes applied to the menu item's <a>, empty strings are ignored.
     114         *
     115         *     @type string $title The title attribute.
     116         *     @type string $target The target attribute.
     117         *     @type string $rel The rel attribute.
     118         *     @type string $href The href attribute.
     119         * }
     120         * @param object $item The current menu item.
     121         * @param array $args Arguments from {@see wp_nav_menu()}.
     122         */
    89123        $atts = apply_filters( 'nav_menu_link_attributes', $atts, $item, $args );
    90124
     
    99133        $item_output = $args->before;
    100134        $item_output .= '<a'. $attributes .'>';
     135        //duplicate_hook
    101136        $item_output .= $args->link_before . apply_filters( 'the_title', $item->title, $item->ID ) . $args->link_after;
    102137        $item_output .= '</a>';
    103138        $item_output .= $args->after;
    104139
     140        /**
     141         * Filter a menu item's starting output.
     142         *
     143         * The menu item's starting output only includes $args->before, the opening <a>,
     144         * the menu item's title, the closing </a>, and $args->after. Currently, there is
     145         * no filter for modifying the opening and closing <li> for a menu item.
     146         *
     147         * @since 3.0.0
     148         *
     149         * @param string The menu item's starting HTML output.
     150         * @param object $item The current menu item.
     151         * @param int $depth From {@see Walker_Nav_Menu::start_el}.
     152         * @param array $args Arguments from {@see wp_nav_menu()}.
     153         */
    105154        $output .= apply_filters( 'walker_nav_menu_start_el', $item_output, $item, $depth, $args );
    106155    }
     
    153202
    154203    $args = wp_parse_args( $args, $defaults );
     204    /**
     205     * Filter the arguments used to display a navigation menu.
     206     *
     207     * @since 3.0.0
     208     *
     209     * @param array $args Arguments from {@see wp_nav_menu()}.
     210     */
    155211    $args = apply_filters( 'wp_nav_menu_args', $args );
    156212    $args = (object) $args;
     
    197253    $show_container = false;
    198254    if ( $args->container ) {
     255        /**
     256         * Filter the list of HTML tags that are valid for use as menu containers.
     257         *
     258         * @since 3.0.0
     259         *
     260         * @param array The acceptable HTML tags for use as menu containers, defaults as 'div' and 'nav'.
     261         */
    199262        $allowed_tags = apply_filters( 'wp_nav_menu_container_allowedtags', array( 'div', 'nav' ) );
    200263        if ( in_array( $args->container, $allowed_tags ) ) {
     
    215278    unset($menu_items);
    216279
     280    /**
     281     * Filter the sorted list of menu item objects before generating the menu's HTML.
     282     *
     283     * @since 3.1.0
     284     *
     285     * @param array $sorted_menu_items The menu items, sorted by each menu item's menu order.
     286     */
    217287    $sorted_menu_items = apply_filters( 'wp_nav_menu_objects', $sorted_menu_items, $args );
    218288
     
    236306    $wrap_class = $args->menu_class ? $args->menu_class : '';
    237307
    238     // Allow plugins to hook into the menu to add their own <li>'s
     308    /**
     309     * Filter the HTML list content for navigation menus.
     310     *
     311     * @since 3.0.0
     312     *
     313     * @param string $items The HTML list content for the menu items.
     314     * @param array $args Arguments from {@see wp_nav_menu()}.
     315     */
    239316    $items = apply_filters( 'wp_nav_menu_items', $items, $args );
     317    /**
     318     * Filter the HTML list content for a specific navigation menu.
     319     *
     320     * @since 3.0.0
     321     *
     322     * @param string $items The HTML list content for the menu items.
     323     * @param array $args Arguments from {@see wp_nav_menu()}.
     324     */
    240325    $items = apply_filters( "wp_nav_menu_{$menu->slug}_items", $items, $args );
    241326
     
    250335        $nav_menu .= '</' . $args->container . '>';
    251336
     337    /**
     338     * Filter the HTML content for navigation menus.
     339     *
     340     * @since 3.0.0
     341     *
     342     * @param string $nav_menu The HTML content for the navigation menu.
     343     * @param array $args Arguments from {@see wp_nav_menu()}.
     344     */
    252345    $nav_menu = apply_filters( 'wp_nav_menu', $nav_menu, $args );
    253346
Note: See TracChangeset for help on using the changeset viewer.