Make WordPress Core


Ignore:
Timestamp:
05/25/2021 05:41:11 PM (4 years ago)
Author:
joedolson
Message:

Menus: Add bulk delete for menu items.

Adds an option to bulk delete menu items from the core Navigation Menus screen, offering a considerable usability benefit when making significant changes to navigation menus.

Uses the bulk select pattern found in post and media lists for consistency with other core management screens, rather than the rapid delete pattern found in menus in the customizer.

Props wphound, welcher, melchoyce, maxpertici, audrasjb
Fixes #21603.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-admin/nav-menus.php

    r50938 r51006  
    486486    /* translators: 1: Item name, 2: Item position, 3: Parent item name. */
    487487    'subMenuFocus'            => __( '%1$s. Sub item number %2$d under %3$s.' ),
     488    /* translators: %s: Item name. */
     489    'menuItemDeletion'        => __( 'item %s' ),
     490    /* translators: %s: Item name. */
     491    'itemsDeleted'            => __( 'Deleted menu item: %s.' ),
    488492);
    489493wp_localize_script( 'nav-menu', 'menus', $nav_menus_l10n );
     
    962966                        <div id="post-body-content" class="wp-clearfix">
    963967                            <?php if ( ! $add_new_screen ) : ?>
    964 
    965968                                <?php
    966969                                $hide_style = '';
     
    979982                                    <p><?php echo $starter_copy; ?></p>
    980983                                </div>
    981 
     984                                <div id="nav-menu-bulk-actions-top" class="bulk-actions">
     985                                    <label class="bulk-select-button" for="bulk-select-switcher-top">
     986                                        <input type="checkbox" id="bulk-select-switcher-top" name="bulk-select-switcher-top" class="bulk-select-switcher">
     987                                        <span class="bulk-select-button-label"><?php echo __( 'Bulk Select' ) ; ?></span>
     988                                    </label>
     989                                </div>
    982990                                <?php
    983991                                if ( isset( $edit_markup ) && ! is_wp_error( $edit_markup ) ) {
     
    10051013                            }
    10061014                            ?>
     1015                            <div id="nav-menu-bulk-actions-bottom" class="bulk-actions">
     1016                                <label class="bulk-select-button" for="bulk-select-switcher-bottom">
     1017                                    <input type="checkbox" id="bulk-select-switcher-bottom" name="bulk-select-switcher-top" class="bulk-select-switcher">
     1018                                    <span class="bulk-select-button-label"><?php echo __( 'Bulk Select' ); ?></span>
     1019                                </label>
     1020                                <input type="button" class="deletion menu-items-delete disabled" value="<?php _e( 'Remove Selected Items' ) ; ?>">
     1021                                <div id="pending-menu-items-to-delete">
     1022                                    <p><?php _e( 'List of menu items selected for deletion:' ) ; ?></p>
     1023                                    <ul></ul>
     1024                                </div>
     1025                            </div>
    10071026                            <div class="menu-settings" <?php echo $no_menus_style; ?>>
    10081027                                <h3><?php _e( 'Menu Settings' ); ?></h3>
Note: See TracChangeset for help on using the changeset viewer.