WP_Customize_Nav_Menu_Setting::filter_nav_menu_options_value()protectedWP 4.3.0

Updates a nav_menu_options array.

Метод класса: WP_Customize_Nav_Menu_Setting{}

Хуков нет.

Возвращает

Массив. (Maybe) modified nav_menu_options array.

Использование

// protected - в коде основоного (родительского) или дочернего класса
$result = $this->filter_nav_menu_options_value( $nav_menu_options, $menu_id, $auto_add );
$nav_menu_options(массив) (обязательный)
Array as returned by get_option( 'nav_menu_options' ).
$menu_id(int) (обязательный)
The term ID for the given menu.
$auto_add(true|false) (обязательный)
Whether to auto-add or not.

Заметки

Список изменений

С версии 4.3.0 Введена.

Код WP_Customize_Nav_Menu_Setting::filter_nav_menu_options_value() WP 6.5.2

protected function filter_nav_menu_options_value( $nav_menu_options, $menu_id, $auto_add ) {
	$nav_menu_options = (array) $nav_menu_options;
	if ( ! isset( $nav_menu_options['auto_add'] ) ) {
		$nav_menu_options['auto_add'] = array();
	}

	$i = array_search( $menu_id, $nav_menu_options['auto_add'], true );

	if ( $auto_add && false === $i ) {
		array_push( $nav_menu_options['auto_add'], $this->term_id );
	} elseif ( ! $auto_add && false !== $i ) {
		array_splice( $nav_menu_options['auto_add'], $i, 1 );
	}

	return $nav_menu_options;
}