WordPress.org

Make WordPress Core

Ticket #13600: menu-item-parent-sanity-check.13600.diff

File menu-item-parent-sanity-check.13600.diff, 3.2 KB (added by filosofo, 4 years ago)
  • wp-admin/includes/nav-menu.php

     
    10061006                $result .= '</div>'; 
    10071007 
    10081008                if( empty($menu_items) ) 
    1009                         return $result; 
     1009                        return $result . ' <ul class="menu" id="menu-to-edit"> </ul>'; 
    10101010 
    10111011                $walker_class_name = apply_filters( 'wp_edit_nav_menu_walker', 'Walker_Nav_Menu_Edit', $menu_id ); 
    10121012 
     
    10241024                if ( $some_pending_menu_items ) 
    10251025                        $result .= '<div class="updated inline"><p>' . __('Click Save Menu to make pending menu items public.') . '</p></div>'; 
    10261026 
     1027                $result .= '<ul class="menu" id="menu-to-edit"> '; 
    10271028                $result .= walk_nav_menu_tree( array_map('wp_setup_nav_menu_item', $menu_items), 0, (object) array('walker' => $walker ) ); 
     1029                $result .= ' </ul> '; 
    10281030                return $result; 
    10291031        } elseif ( is_wp_error( $menu ) ) { 
    10301032                return $menu; 
  • wp-admin/js/nav-menu.dev.js

     
    9393                                                if( depth == 0 ) { // Item is on the top level, has no parent 
    9494                                                        input.val(0); 
    9595                                                } else { // Find the parent item, and retrieve its object id. 
    96                                                         while( parent.menuItemDepth() != depth - 1 ) { 
     96                                                        while( ! parent[0] || ! parent[0].className || -1 == parent[0].className.indexOf('menu-item') || ( parent.menuItemDepth() != depth - 1 ) ) 
    9797                                                                parent = parent.prev(); 
    98                                                         } 
    9998                                                        input.val( parent.find('.menu-item-data-db-id').val() ); 
    10099                                                } 
    101100                                        }); 
  • wp-admin/nav-menus.php

     
    562562                                        </div><!-- END #nav-menu-header --> 
    563563                                        <div id="post-body"> 
    564564                                                <div id="post-body-content"> 
    565                                                         <?php if ( is_nav_menu( $nav_menu_selected_id ) ) : ?> 
    566                                                                 <ul class="menu" id="menu-to-edit"> 
    567                                                                 <?php 
     565                                                        <?php  
     566                                                        if ( is_nav_menu( $nav_menu_selected_id ) ) : 
    568567                                                                $edit_markup = wp_get_nav_menu_to_edit( $nav_menu_selected_id  ); 
    569                                                                 if ( ! is_wp_error( $edit_markup ) ) { 
     568                                                                if ( ! is_wp_error( $edit_markup ) ) : 
    570569                                                                        echo $edit_markup; 
    571                                                                 } 
    572                                                                 ?> 
    573                                                                 </ul> 
    574                                                         <?php elseif ( empty($nav_menu_selected_id) ): 
     570                                                                endif; 
     571                                                        elseif ( empty( $nav_menu_selected_id ) ) : 
    575572                                                                echo '<div class="post-body-plain">'; 
    576573                                                                echo '<p>' . __('To create a custom menu, give it a name above and click Create Menu. Then choose items like pages, categories or custom links from the left column to add to this menu.') . '</p>'; 
    577574                                                                echo '<p>' . __('After you have added your items, drag and drop to put them in the order you want. You can also click each item to reveal additional configuration options.') . '</p>'; 
    578575                                                                echo '<p>' . __('When you have finished building your custom menu, make sure you click the Save Menu button.') . '</p>'; 
    579576                                                                echo '</div>'; 
    580                                                         endif; ?> 
     577                                                        endif;  
     578                                                        ?> 
    581579                                                </div><!-- /#post-body-content --> 
    582580                                        </div><!-- /#post-body --> 
    583581                                </form><!-- /#update-nav-menu -->