$_nav_menu_placeholder ? $_nav_menu_placeholder - 1 : -1; ?>

class="button-secondary submit-add-to-menu right" value="" name="add-post-type-menu-item" id="submit-posttype-lang-switch">

base ) { return; } wp_enqueue_script( 'falang_nav_menu', FALANG_ADMIN_URL . '/js/nav-menu.js', array( 'jquery' ), Falang()->get_version(), true ); $data = array( 'strings' => Language_Switcher::get_switcher_options( 'menu', 'string' ), // The strings for the options 'title' => __( 'Languages', 'falang' ), // The title 'val' => array(), ); // Get all language switcher menu items $items = get_posts( array( 'numberposts' => -1, 'nopaging' => true, 'post_type' => 'nav_menu_item', 'fields' => 'ids', 'meta_key' => '_falang_menu_item', ) ); // The options values for the language switcher foreach ( $items as $item ) { $data['val'][ $item ] = get_post_meta( $item, '_falang_menu_item', true ); } // Send all these data to javascript wp_localize_script( 'falang_nav_menu', 'falang_data', $data ); } /** * Save our menu item options * * @since 1.3.1 * * @param int $menu_id not used * @param int $menu_item_db_id */ public function wp_update_nav_menu_item( $menu_id = 0, $menu_item_db_id = 0 ) { if ( empty( $_POST['menu-item-url'][ $menu_item_db_id ] ) || '#falang_switcher' !== $_POST['menu-item-url'][ $menu_item_db_id ] ) { // phpcs:ignore WordPress.Security.NonceVerification return; } // Security check as 'wp_update_nav_menu_item' can be called from outside WP admin if ( current_user_can( 'edit_theme_options' ) ) { check_admin_referer( 'update-nav_menu', 'update-nav-menu-nonce' ); $options = array( 'hide_current' => 0, 'display_flags' => 0, 'display_name' => 1, 'dropdown' => 0 ); // Default values // Our jQuery form has not been displayed if ( empty( $_POST['menu-item-falang-detect'][ $menu_item_db_id ] ) ) { if ( ! get_post_meta( $menu_item_db_id, '_falang_menu_item', true ) ) { // Our options were never saved update_post_meta( $menu_item_db_id, '_falang_menu_item', $options ); } } else { foreach ( array_keys( $options ) as $opt ) { $options[ $opt ] = empty( $_POST[ 'menu-item-' . $opt ][ $menu_item_db_id ] ) ? 0 : 1; } update_post_meta( $menu_item_db_id, '_falang_menu_item', $options ); // Allow us to easily identify our nav menu item } } } /** * Assigns the title and label to the language switcher menu items * * @since 1.3.1 * * @param object $item Menu item. * @return object */ public function wp_setup_nav_menu_item( $item ) { if ( '#falang_switcher' === $item->url ) { $item->post_title = __( 'Languages', 'falang' ); $item->type_label = __( 'Falang Language Switcher', 'falang' ); } return $item; } }