WP_Customize_Nav_Menu_Setting::filter_wp_get_nav_menu_object() WordPress Method
The WP_Customize_Nav_Menu_Setting::filter_wp_get_nav_menu_object() method is used to filter the nav menu object before it is passed to the customizer. This is useful for manipulating the menu properties before they are sent to the customizer.
WP_Customize_Nav_Menu_Setting::filter_wp_get_nav_menu_object( object|null $menu_obj, string $menu_id ) #
Filters the wp_get_nav_menu_object() result to supply the previewed menu object.
Description
Requesting a nav_menu object by anything but ID is not supported.
See also
Parameters
- $menu_obj
(object|null)(Required)Object returned by wp_get_nav_menu_object().
- $menu_id
(string)(Required)ID of the nav_menu term. Requests by slug or name will be ignored.
Return
(object|null)
Source
File: wp-includes/customize/class-wp-customize-nav-menu-setting.php
public function filter_wp_get_nav_menu_object( $menu_obj, $menu_id ) { $ok = ( get_current_blog_id() === $this->_previewed_blog_id && is_int( $menu_id ) && $menu_id === $this->term_id ); if ( ! $ok ) { return $menu_obj; } $setting_value = $this->value(); // Handle deleted menus. if ( false === $setting_value ) { return false; } // Handle sanitization failure by preventing short-circuiting. if ( null === $setting_value ) { return $menu_obj; } $menu_obj = (object) array_merge( array( 'term_id' => $this->term_id, 'term_taxonomy_id' => $this->term_id, 'slug' => sanitize_title( $setting_value['name'] ), 'count' => 0, 'term_group' => 0, 'taxonomy' => self::TAXONOMY, 'filter' => 'raw', ), $setting_value ); return $menu_obj; }
Expand full source codeCollapse full source codeView on TracView on GitHub
Changelog
Version | Description |
---|---|
4.3.0 | Introduced. |