wp_save_nav_menu_items example


_wp_expand_nav_menu_post_data();

switch ( $action ) {
    case 'add-menu-item':
        check_admin_referer( 'add-menu_item', 'menu-settings-column-nonce' );

        if ( isset( $_REQUEST['nav-menu-locations'] ) ) {
            set_theme_mod( 'nav_menu_locations', array_map( 'absint', $_REQUEST['menu-locations'] ) );
        } elseif ( isset( $_REQUEST['menu-item'] ) ) {
            wp_save_nav_menu_items( $nav_menu_selected_id$_REQUEST['menu-item'] );
        }

        break;

    case 'move-down-menu-item':
        // Moving down a menu item is the same as moving up the next in order.         check_admin_referer( 'move-menu_item' );

        $menu_item_id = isset( $_REQUEST['menu-item'] ) ? (int) $_REQUEST['menu-item'] : 0;

        if ( is_nav_menu_item( $menu_item_id ) ) {
            
$_menu_items = array_map( 'wp_setup_nav_menu_item', array( $_object ) );
            $_menu_item  = reset( $_menu_items );

            // Restore the missing menu item properties.             $menu_item_data['menu-item-description'] = $_menu_item->description;
        }

        $menu_items_data[] = $menu_item_data;
    }

    $item_ids = wp_save_nav_menu_items( 0, $menu_items_data );
    if ( is_wp_error( $item_ids ) ) {
        wp_die( 0 );
    }

    $menu_items = array();

    foreach ( (array) $item_ids as $menu_item_id ) {
        $menu_obj = get_post( $menu_item_id );

        if ( ! empty( $menu_obj->ID ) ) {
            $menu_obj        = wp_setup_nav_menu_item( $menu_obj );
            
Home | Imprint | This part of the site doesn't use cookies.