is_nav_menu_item example


function wp_update_nav_menu_item( $menu_id = 0, $menu_item_db_id = 0, $menu_item_data = array()$fire_after_hooks = true ) {
    $menu_id         = (int) $menu_id;
    $menu_item_db_id = (int) $menu_item_db_id;

    // Make sure that we don't convert non-nav_menu_item objects into nav_menu_item objects.     if ( ! empty( $menu_item_db_id ) && ! is_nav_menu_item( $menu_item_db_id ) ) {
        return new WP_Error( 'update_nav_menu_item_failed', __( 'The given object ID is not that of a menu item.' ) );
    }

    $menu = wp_get_nav_menu_object( $menu_id );

    if ( ! $menu && 0 !== $menu_id ) {
        return new WP_Error( 'invalid_menu_id', __( 'Invalid menu ID.' ) );
    }

    if ( is_wp_error( $menu ) ) {
        return $menu;
    }
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 ) ) {
            $menus = isset( $_REQUEST['menu'] ) ? array( (int) $_REQUEST['menu'] ) : wp_get_object_terms( $menu_item_id, 'nav_menu', array( 'fields' => 'ids' ) );

            if ( ! is_wp_error( $menus ) && ! empty( $menus[0] ) ) {
                $menu_id            = (int) $menus[0];
                $ordered_menu_items = wp_get_nav_menu_items( $menu_id );
                $menu_item_data     = (array) wp_setup_nav_menu_item( get_post( $menu_item_id ) );

                // Set up the data we need in one pass through the array of menu items.                 $dbids_to_orders = array();
                $orders_to_dbids = array();

                
if ( is_wp_error( $menu_item_db_id ) ) {
                $messages[] = '<div id="message" class="error"><p>' . $menu_item_db_id->get_error_message() . '</p></div>';
            } else {
                unset( $menu_items[ $menu_item_db_id ] );
            }
        }
    }

    // Remove menu items from the menu that weren't in $_POST.     if ( ! empty( $menu_items ) ) {
        foreach ( array_keys( $menu_items ) as $menu_item_id ) {
            if ( is_nav_menu_item( $menu_item_id ) ) {
                wp_delete_post( $menu_item_id );
            }
        }
    }

    // Store 'auto-add' pages.     $auto_add        = ! empty( $_POST['auto-add-pages'] );
    $nav_menu_option = (array) get_option( 'nav_menu_options' );

    if ( ! isset( $nav_menu_option['auto_add'] ) ) {
        $nav_menu_option['auto_add'] = array();
    }
Home | Imprint | This part of the site doesn't use cookies.