Make WordPress Core

Ticket #23450: 23450.4.diff

File 23450.4.diff, 34.9 KB (added by jkudish, 10 years ago)

restores screen options and sweep for missing escaping + code standards (spacing)

  • wp-admin/css/wp-admin.css

     
    59955995        overflow: auto;
    59965996}
    59975997
     5998.wp-full-overlay-sidebar-content .accordion-section:first-child {
     5999        border-top: 1px solid #fff;
     6000}
     6001
    59986002/* Close Link */
    59996003.wp-full-overlay .close-full-overlay {
    60006004        text-decoration: none;
     
    71647168        display: block;
    71657169}
    71667170
     7171#nav-menu-meta ul.outer-border {
     7172        -webkit-border-radius: 3px;
     7173        border-radius: 3px;
     7174}
     7175
     7176.accordion-section ul.category-tabs,
     7177.accordion-section ul.add-menu-item-tabs,
     7178.accordion-section ul.wp-tab-bar {
     7179        margin: 0;
     7180}
     7181
     7182.accordion-section .categorychecklist {
     7183        margin: 13px 0;
     7184}
     7185
     7186#nav-menu-meta .accordion-section-content {
     7187        padding: 18px 13px;
     7188}
     7189
     7190#nav-menu-meta .button-controls {
     7191        margin-bottom: 0;
     7192}
     7193
    71677194#nav-menus-frame {
    71687195        margin-left: 300px;
    71697196        margin-top: 28px;
     
    73637390}
    73647391
    73657392/* Add Menu Item Boxes */
    7366 .postbox .howto input {
     7393.postbox .howto input,
     7394.accordion-container .howto input {
    73677395        width: 180px;
    73687396        float: right;
    73697397}
    73707398
     7399.accordion-container .outer-border {
     7400        margin-top: 0;
     7401}
     7402
     7403.accordion-container .accordion-section:first-child {
     7404        -webkit-border-top-right-radius: 3px;
     7405        -webkit-border-top-left-radius: 3px;
     7406        border-top-right-radius: 3px;
     7407        border-top-left-radius: 3px;
     7408}
     7409
     7410.accordion-container .accordion-section:last-child {
     7411        -webkit-border-bottom-right-radius: 3px;
     7412        -webkit-border-bottom-left-radius: 3px;
     7413        border-bottom-right-radius: 3px;
     7414        border-bottom-left-radius: 3px;
     7415}
     7416
    73717417.customlinkdiv .howto input {
    73727418        width: 200px;
    73737419}
    73747420
     7421.customlinkdiv p {
     7422        margin-top: 0
     7423}
     7424
    73757425#nav-menu-theme-locations .howto select {
    73767426        width: 100%;
    73777427}
     
    87748824        margin: 0;
    87758825}
    87768826
     8827.accordion-section:first-child {
     8828        border-top: 1px solid #dfdfdf;
     8829}
     8830
    87778831.accordion-section:last-child {
    87788832        box-shadow: 0 1px 0 0px #fff;
    87798833}
     
    87818835.accordion-section.open .accordion-section-content {
    87828836        display: block;
    87838837        background: #fdfdfd;
     8838        border-left: 1px solid #dfdfdf;
     8839        border-right: 1px solid #dfdfdf;
    87848840}
    87858841
    87868842.accordion-section.open:hover {
     
    87978853        margin: 0;
    87988854        padding: 15px 20px;
    87998855        position: relative;
     8856        border-left: 1px solid #dfdfdf;
     8857        border-right: 1px solid #dfdfdf;
    88008858
    88018859        cursor: pointer;
    88028860
     
    88708928        background-image:    -moz-linear-gradient(bottom, #6d6d6d, #808080);
    88718929        background-image:      -o-linear-gradient(bottom, #6d6d6d, #808080);
    88728930        background-image: linear-gradient(to top, #6d6d6d, #808080);
     8931        border-left: 1px solid #808080;
     8932        border-right: 1px solid #808080;
    88738933}
    88748934
    88758935.control-section.accordion-section:hover,
  • wp-admin/includes/nav-menu.php

     
    385385 * @since 3.0.0
    386386 **/
    387387function wp_nav_menu_setup() {
    388         // Register meta boxes
    389388        wp_nav_menu_post_type_meta_boxes();
    390         add_meta_box( 'add-custom-links', __( 'Add Links' ), 'wp_nav_menu_item_link_meta_box', 'nav-menus', 'side', 'default' );
     389        wp_nav_menu_item_link_meta_box();
    391390        wp_nav_menu_taxonomy_meta_boxes();
    392391
    393         // Register advanced menu items (columns)
    394         add_filter( 'manage_nav-menus_columns', 'wp_nav_menu_manage_columns');
    395 
    396392        // If first time editing, disable advanced items by default.
    397393        if( false === get_user_option( 'managenav-menuscolumnshidden' ) ) {
    398394                $user = wp_get_current_user();
     
    447443                $post_type = apply_filters( 'nav_menu_meta_box_object', $post_type );
    448444                if ( $post_type ) {
    449445                        $id = $post_type->name;
    450                         add_meta_box( "add-{$id}", $post_type->labels->name, 'wp_nav_menu_item_post_type_meta_box', 'nav-menus', 'side', 'default', $post_type );
     446                        wp_nav_menu_item_post_type_meta_box( $post_type );
    451447                }
    452448        }
    453449}
     
    467463                $tax = apply_filters( 'nav_menu_meta_box_object', $tax );
    468464                if ( $tax ) {
    469465                        $id = $tax->name;
    470                         add_meta_box( "add-{$id}", $tax->labels->name, 'wp_nav_menu_item_taxonomy_meta_box', 'nav-menus', 'side', 'default', $tax );
     466                        wp_nav_menu_item_taxonomy_meta_box( $tax );
    471467                }
    472468        }
    473469}
     
    564560        );
    565561
    566562        ?>
    567         <div class="customlinkdiv" id="customlinkdiv">
     563        <li class="control-section accordion-section" id="accordion-section-title_tagline">
     564                <h3 title="" tabindex="0" class="accordion-section-title"><?php _e( 'Links' ); ?></h3>
     565                <div class="customlinkdiv accordion-section-content" id="customlinkdiv">
    568566
    569567                        <input type="hidden" value="custom" name="menu-item[<?php echo $_nav_menu_placeholder; ?>][menu-item-type]" />
    570568                        <p id="menu-item-url-wrap">
     
    577575                        <p id="menu-item-name-wrap">
    578576                                <label class="howto" for="custom-menu-item-name">
    579577                                        <span><?php _e( 'Link Text' ); ?></span>
    580                                         <input id="custom-menu-item-name" name="menu-item[<?php echo $_nav_menu_placeholder; ?>][menu-item-title]" type="text" class="regular-text menu-item-textbox input-with-default-title" title="<?php esc_attr_e('Menu Item'); ?>" />
     578                                        <input id="custom-menu-item-name" name="menu-item[<?php echo $_nav_menu_placeholder; ?>][menu-item-title]" type="text" class="regular-text menu-item-textbox input-with-default-title" title="<?php esc_attr_e( 'Menu Item' ); ?>" />
    581579                                </label>
    582580                        </p>
    583581
    584                 <p class="button-controls">
    585                         <span class="add-to-menu">
    586                                 <input type="submit"<?php wp_nav_menu_disabled_check( $nav_menu_selected_id ); ?> class="button-secondary submit-add-to-menu right" value="<?php esc_attr_e('Add to Menu'); ?>" name="add-custom-menu-item" id="submit-customlinkdiv" />
    587                                 <span class="spinner"></span>
    588                         </span>
    589                 </p>
     582                        <p class="button-controls">
     583                                <span class="add-to-menu">
     584                                        <input type="submit"<?php wp_nav_menu_disabled_check( $nav_menu_selected_id ); ?> class="button-secondary submit-add-to-menu right" value="<?php esc_attr_e( 'Add to Menu' ); ?>" name="add-custom-menu-item" id="submit-customlinkdiv" />
     585                                        <span class="spinner"></span>
     586                                </span>
     587                        </p>
    590588
    591         </div><!-- /.customlinkdiv -->
     589                </div><!-- /.customlinkdiv -->
     590        </li>
    592591        <?php
    593592}
    594593
     
    600599 * @param string $object Not used.
    601600 * @param string $post_type The post type object.
    602601 */
    603 function wp_nav_menu_item_post_type_meta_box( $object, $post_type ) {
     602function wp_nav_menu_item_post_type_meta_box( $post_type ) {
    604603        global $_nav_menu_placeholder, $nav_menu_selected_id;
    605604
    606         $post_type_name = $post_type['args']->name;
     605        $post_type_name = $post_type->name;
    607606
    608607        // paginate browsing for large numbers of post objects
    609608        $per_page = 50;
     
    621620                'update_post_meta_cache' => false
    622621        );
    623622
    624         if ( isset( $post_type['args']->_default_query ) )
    625                 $args = array_merge($args, (array) $post_type['args']->_default_query );
     623        if ( isset( $post_type->_default_query ) )
     624                $args = array_merge( $args, (array) $post_type->_default_query );
    626625
    627626        // @todo transient caching of these results with proper invalidation on updating of a post of this type
    628627        $get_posts = new WP_Query;
     
    632631                return;
    633632        }
    634633
    635         $post_type_object = get_post_type_object($post_type_name);
     634        $post_type_object = get_post_type_object( $post_type_name );
    636635
    637636        $num_pages = $get_posts->max_num_pages;
    638637
     
    681680        );
    682681
    683682        ?>
    684         <div id="posttype-<?php echo $post_type_name; ?>" class="posttypediv">
    685                 <ul id="posttype-<?php echo $post_type_name; ?>-tabs" class="posttype-tabs add-menu-item-tabs">
    686                         <li <?php echo ( 'most-recent' == $current_tab ? ' class="tabs"' : '' ); ?>><a class="nav-tab-link" href="<?php if ( $nav_menu_selected_id ) echo esc_url(add_query_arg($post_type_name . '-tab', 'most-recent', remove_query_arg($removed_args))); ?>#tabs-panel-posttype-<?php echo $post_type_name; ?>-most-recent"><?php _e('Most Recent'); ?></a></li>
    687                         <li <?php echo ( 'all' == $current_tab ? ' class="tabs"' : '' ); ?>><a class="nav-tab-link" href="<?php if ( $nav_menu_selected_id ) echo esc_url(add_query_arg($post_type_name . '-tab', 'all', remove_query_arg($removed_args))); ?>#<?php echo $post_type_name; ?>-all"><?php _e('View All'); ?></a></li>
    688                         <li <?php echo ( 'search' == $current_tab ? ' class="tabs"' : '' ); ?>><a class="nav-tab-link" href="<?php if ( $nav_menu_selected_id ) echo esc_url(add_query_arg($post_type_name . '-tab', 'search', remove_query_arg($removed_args))); ?>#tabs-panel-posttype-<?php echo $post_type_name; ?>-search"><?php _e('Search'); ?></a></li>
    689                 </ul>
     683        <li class="control-section accordion-section" id="accordion-section-title_tagline">
     684                <h3 title="" tabindex="0" class="accordion-section-title"><?php echo $post_type->labels->name; ?></h3>
     685                <div id="posttype-<?php echo esc_attr( $post_type_name ); ?>" class="posttypediv accordion-section-content">
     686                        <ul id="posttype-<?php echo esc_attr( $post_type_name ); ?>-tabs" class="posttype-tabs add-menu-item-tabs">
     687                                <li <?php echo ( 'most-recent' == $current_tab ? ' class="tabs"' : '' ); ?>><a class="nav-tab-link tab-most-recent" data-type="tabs-panel-posttype-<?php echo esc_attr( $post_type_name ); ?>-most-recent" href="<?php if ( $nav_menu_selected_id ) echo esc_url( add_query_arg( $post_type_name . '-tab', 'most-recent', remove_query_arg( $removed_args ) ) ); ?>#tabs-panel-posttype-<?php echo esc_attr( $post_type_name ); ?>-most-recent"><?php _e( 'Most Recent' ); ?></a></li>
     688                                <li <?php echo ( 'all' == $current_tab ? ' class="tabs"' : '' ); ?>><a class="nav-tab-link" data-type="<?php echo esc_attr( $post_type_name ); ?>-all" href="<?php if ( $nav_menu_selected_id ) echo esc_url( add_query_arg( $post_type_name . '-tab', 'all', remove_query_arg( $removed_args ) ) . '#' . $post_type_name . '-all' ); ?> "><?php _e( 'View All' ); ?></a></li>
     689                                <li <?php echo ( 'search' == $current_tab ? ' class="tabs"' : '' ); ?>><a class="nav-tab-link" data-type="tabs-panel-posttype-<?php echo esc_attr( $post_type_name ); ?>-search" href="<?php if ( $nav_menu_selected_id ) echo esc_url( add_query_arg( $post_type_name . '-tab', 'search', remove_query_arg( $removed_args ) ) . '#tabs-panel-posttype-' .  $post_type_name . '-search' ); ?>"><?php _e( 'Search' ); ?></a></li>
     690                        </ul>
    690691
    691                 <div id="tabs-panel-posttype-<?php echo $post_type_name; ?>-most-recent" class="tabs-panel <?php
    692                         echo ( 'most-recent' == $current_tab ? 'tabs-panel-active' : 'tabs-panel-inactive' );
    693                 ?>">
    694                         <ul id="<?php echo $post_type_name; ?>checklist-most-recent" class="categorychecklist form-no-clear">
    695                                 <?php
    696                                 $recent_args = array_merge( $args, array( 'orderby' => 'post_date', 'order' => 'DESC', 'posts_per_page' => 15 ) );
    697                                 $most_recent = $get_posts->query( $recent_args );
    698                                 $args['walker'] = $walker;
    699                                 echo walk_nav_menu_tree( array_map('wp_setup_nav_menu_item', $most_recent), 0, (object) $args );
    700                                 ?>
    701                         </ul>
    702                 </div><!-- /.tabs-panel -->
     692                        <div id="tabs-panel-posttype-<?php echo esc_attr( $post_type_name ); ?>-most-recent" class="tabs-panel <?php
     693                                echo ( 'most-recent' == $current_tab ? 'tabs-panel-active' : 'tabs-panel-inactive' );
     694                        ?>">
     695                                <ul id="<?php echo esc_attr( $post_type_name ); ?>-checklist-most-recent" class="categorychecklist form-no-clear">
     696                                        <?php
     697                                        $recent_args = array_merge( $args, array( 'orderby' => 'post_date', 'order' => 'DESC', 'posts_per_page' => 15 ) );
     698                                        $most_recent = $get_posts->query( $recent_args );
     699                                        $args['walker'] = $walker;
     700                                        echo walk_nav_menu_tree( array_map('wp_setup_nav_menu_item', $most_recent), 0, (object) $args );
     701                                        ?>
     702                                </ul>
     703                        </div><!-- /.tabs-panel -->
    703704
    704                 <div class="tabs-panel <?php
    705                         echo ( 'search' == $current_tab ? 'tabs-panel-active' : 'tabs-panel-inactive' );
    706                 ?>" id="tabs-panel-posttype-<?php echo $post_type_name; ?>-search">
    707                         <?php
    708                         if ( isset( $_REQUEST['quick-search-posttype-' . $post_type_name] ) ) {
    709                                 $searched = esc_attr( $_REQUEST['quick-search-posttype-' . $post_type_name] );
    710                                 $search_results = get_posts( array( 's' => $searched, 'post_type' => $post_type_name, 'fields' => 'all', 'order' => 'DESC', ) );
    711                         } else {
    712                                 $searched = '';
    713                                 $search_results = array();
    714                         }
    715                         ?>
    716                         <p class="quick-search-wrap">
    717                                 <input type="search" class="quick-search input-with-default-title" title="<?php esc_attr_e('Search'); ?>" value="<?php echo $searched; ?>" name="quick-search-posttype-<?php echo $post_type_name; ?>" />
    718                                 <span class="spinner"></span>
    719                                 <?php submit_button( __( 'Search' ), 'button-small quick-search-submit button-secondary hide-if-js', 'submit', false, array( 'id' => 'submit-quick-search-posttype-' . $post_type_name ) ); ?>
    720                         </p>
     705                        <div class="tabs-panel <?php
     706                                echo ( 'search' == $current_tab ? 'tabs-panel-active' : 'tabs-panel-inactive' );
     707                        ?>" id="tabs-panel-posttype-<?php echo esc_attr( $post_type_name ); ?>-search">
     708                                <?php
     709                                if ( isset( $_REQUEST['quick-search-posttype-' . $post_type_name] ) ) {
     710                                        $searched = esc_attr( $_REQUEST['quick-search-posttype-' . $post_type_name] );
     711                                        $search_results = get_posts( array( 's' => $searched, 'post_type' => $post_type_name, 'fields' => 'all', 'order' => 'DESC', ) );
     712                                } else {
     713                                        $searched = '';
     714                                        $search_results = array();
     715                                }
     716                                ?>
     717                                <p class="quick-search-wrap">
     718                                        <input type="search" class="quick-search input-with-default-title" title="<?php esc_attr_e( 'Search' ); ?>" value="<?php echo esc_attr( $searched ); ?>" name="quick-search-posttype-<?php echo esc_attr( $post_type_name ); ?>" />
     719                                        <span class="spinner"></span>
     720                                        <?php submit_button( __( 'Search' ), 'button-small quick-search-submit button-secondary hide-if-js', 'submit', false, array( 'id' => 'submit-quick-search-posttype-' . $post_type_name ) ); ?>
     721                                </p>
    721722
    722                         <ul id="<?php echo $post_type_name; ?>-search-checklist" data-wp-lists="list:<?php echo $post_type_name?>" class="categorychecklist form-no-clear">
    723                         <?php if ( ! empty( $search_results ) && ! is_wp_error( $search_results ) ) : ?>
    724                                 <?php
    725                                 $args['walker'] = $walker;
    726                                 echo walk_nav_menu_tree( array_map('wp_setup_nav_menu_item', $search_results), 0, (object) $args );
    727                                 ?>
    728                         <?php elseif ( is_wp_error( $search_results ) ) : ?>
    729                                 <li><?php echo $search_results->get_error_message(); ?></li>
    730                         <?php elseif ( ! empty( $searched ) ) : ?>
    731                                 <li><?php _e('No results found.'); ?></li>
    732                         <?php endif; ?>
    733                         </ul>
    734                 </div><!-- /.tabs-panel -->
     723                                <ul id="<?php echo esc_attr( $post_type_name ); ?>-search-checklist" data-wp-lists="list:<?php echo esc_attr( $post_type_name ); ?>" class="categorychecklist form-no-clear">
     724                                <?php if ( ! empty( $search_results ) && ! is_wp_error( $search_results ) ) : ?>
     725                                        <?php
     726                                        $args['walker'] = $walker;
     727                                        echo walk_nav_menu_tree( array_map('wp_setup_nav_menu_item', $search_results), 0, (object) $args );
     728                                        ?>
     729                                <?php elseif ( is_wp_error( $search_results ) ) : ?>
     730                                        <li><?php echo $search_results->get_error_message(); ?></li>
     731                                <?php elseif ( ! empty( $searched ) ) : ?>
     732                                        <li><?php _e('No results found.'); ?></li>
     733                                <?php endif; ?>
     734                                </ul>
     735                        </div><!-- /.tabs-panel -->
    735736
    736                 <div id="<?php echo $post_type_name; ?>-all" class="tabs-panel tabs-panel-view-all <?php
    737                         echo ( 'all' == $current_tab ? 'tabs-panel-active' : 'tabs-panel-inactive' );
    738                 ?>">
    739                         <?php if ( ! empty( $page_links ) ) : ?>
    740                                 <div class="add-menu-item-pagelinks">
    741                                         <?php echo $page_links; ?>
    742                                 </div>
    743                         <?php endif; ?>
    744                         <ul id="<?php echo $post_type_name; ?>checklist" data-wp-lists="list:<?php echo $post_type_name?>" class="categorychecklist form-no-clear">
    745                                 <?php
    746                                 $args['walker'] = $walker;
     737                        <div id="<?php echo esc_attr( $post_type_name ); ?>-all" class="tabs-panel tabs-panel-view-all <?php
     738                                echo ( 'all' == $current_tab ? 'tabs-panel-active' : 'tabs-panel-inactive' );
     739                        ?>">
     740                                <?php if ( ! empty( $page_links ) ) : ?>
     741                                        <div class="add-menu-item-pagelinks">
     742                                                <?php echo $page_links; ?>
     743                                        </div>
     744                                <?php endif; ?>
     745                                <ul id="<?php echo esc_attr( $post_type_name ); ?>checklist" data-wp-lists="list:<?php echo esc_attr( $post_type_name ); ?>" class="categorychecklist form-no-clear">
     746                                        <?php
     747                                        $args['walker'] = $walker;
    747748
    748                                 // if we're dealing with pages, let's put a checkbox for the front page at the top of the list
    749                                 if ( 'page' == $post_type_name ) {
    750                                         $front_page = 'page' == get_option('show_on_front') ? (int) get_option( 'page_on_front' ) : 0;
    751                                         if ( ! empty( $front_page ) ) {
    752                                                 $front_page_obj = get_post( $front_page );
    753                                                 $front_page_obj->front_or_home = true;
    754                                                 array_unshift( $posts, $front_page_obj );
    755                                         } else {
    756                                                 $_nav_menu_placeholder = ( 0 > $_nav_menu_placeholder ) ? intval($_nav_menu_placeholder) - 1 : -1;
    757                                                 array_unshift( $posts, (object) array(
    758                                                         'front_or_home' => true,
    759                                                         'ID' => 0,
    760                                                         'object_id' => $_nav_menu_placeholder,
    761                                                         'post_content' => '',
    762                                                         'post_excerpt' => '',
    763                                                         'post_parent' => '',
    764                                                         'post_title' => _x('Home', 'nav menu home label'),
    765                                                         'post_type' => 'nav_menu_item',
    766                                                         'type' => 'custom',
    767                                                         'url' => home_url('/'),
    768                                                 ) );
     749                                        // if we're dealing with pages, let's put a checkbox for the front page at the top of the list
     750                                        if ( 'page' == $post_type_name ) {
     751                                                $front_page = 'page' == get_option( 'show_on_front' ) ? (int) get_option( 'page_on_front' ) : 0;
     752                                                if ( ! empty( $front_page ) ) {
     753                                                        $front_page_obj = get_post( $front_page );
     754                                                        $front_page_obj->front_or_home = true;
     755                                                        array_unshift( $posts, $front_page_obj );
     756                                                } else {
     757                                                        $_nav_menu_placeholder = ( 0 > $_nav_menu_placeholder ) ? intval($_nav_menu_placeholder) - 1 : -1;
     758                                                        array_unshift( $posts, (object) array(
     759                                                                'front_or_home' => true,
     760                                                                'ID' => 0,
     761                                                                'object_id' => $_nav_menu_placeholder,
     762                                                                'post_content' => '',
     763                                                                'post_excerpt' => '',
     764                                                                'post_parent' => '',
     765                                                                'post_title' => _x( 'Home', 'nav menu home label' ),
     766                                                                'post_type' => 'nav_menu_item',
     767                                                                'type' => 'custom',
     768                                                                'url' => home_url(),
     769                                                        ) );
     770                                                }
    769771                                        }
    770                                 }
    771772
    772                                 $posts = apply_filters( 'nav_menu_items_'.$post_type_name, $posts, $args, $post_type );
    773                                 $checkbox_items = walk_nav_menu_tree( array_map('wp_setup_nav_menu_item', $posts), 0, (object) $args );
     773                                        $posts = apply_filters( 'nav_menu_items_' . $post_type_name, $posts, $args, $post_type );
     774                                        $checkbox_items = walk_nav_menu_tree( array_map('wp_setup_nav_menu_item', $posts), 0, (object) $args );
    774775
    775                                 if ( 'all' == $current_tab && ! empty( $_REQUEST['selectall'] ) ) {
    776                                         $checkbox_items = preg_replace('/(type=(.)checkbox(\2))/', '$1 checked=$2checked$2', $checkbox_items);
     776                                        if ( 'all' == $current_tab && ! empty( $_REQUEST['selectall'] ) )
     777                                                $checkbox_items = preg_replace( '/(type=(.)checkbox(\2))/', '$1 checked=$2checked$2', $checkbox_items );
    777778
    778                                 }
     779                                        echo $checkbox_items;
     780                                        ?>
     781                                </ul>
     782                                <?php if ( ! empty( $page_links ) ) : ?>
     783                                        <div class="add-menu-item-pagelinks">
     784                                                <?php echo $page_links; ?>
     785                                        </div>
     786                                <?php endif; ?>
     787                        </div><!-- /.tabs-panel -->
    779788
    780                                 echo $checkbox_items;
    781                                 ?>
    782                         </ul>
    783                         <?php if ( ! empty( $page_links ) ) : ?>
    784                                 <div class="add-menu-item-pagelinks">
    785                                         <?php echo $page_links; ?>
    786                                 </div>
    787                         <?php endif; ?>
    788                 </div><!-- /.tabs-panel -->
     789                        <p class="button-controls">
     790                                <span class="list-controls">
     791                                        <a href="<?php echo esc_url( add_query_arg( array( $post_type_name . '-tab' => 'all', 'selectall' => 1 ), remove_query_arg( $removed_args ) ) . '#posttype-' . $post_type_name ); ?>" class="select-all"><?php _e( 'Select All' ); ?></a>
     792                                </span>
    789793
    790                 <p class="button-controls">
    791                         <span class="list-controls">
    792                                 <a href="<?php
    793                                         echo esc_url( add_query_arg(
    794                                                 array(
    795                                                         $post_type_name . '-tab' => 'all',
    796                                                         'selectall' => 1,
    797                                                 ),
    798                                                 remove_query_arg( $removed_args )
    799                                         ));
    800                                 ?>#posttype-<?php echo $post_type_name; ?>" class="select-all"><?php _e('Select All'); ?></a>
    801                         </span>
     794                                <span class="add-to-menu">
     795                                        <input type="submit"<?php disabled( $nav_menu_selected_id, 0 ); ?> class="button-secondary submit-add-to-menu right" value="<?php esc_attr_e( 'Add to Menu' ) ; ?>" name="add-post-type-menu-item" id="submit-posttype-<?php echo esc_attr( $post_type_name ); ?>" />
     796                                        <span class="spinner"></span>
     797                                </span>
     798                        </p>
    802799
    803                         <span class="add-to-menu">
    804                                 <input type="submit"<?php wp_nav_menu_disabled_check( $nav_menu_selected_id ); ?> class="button-secondary submit-add-to-menu right" value="<?php esc_attr_e( __( 'Add to Menu' ) ); ?>" name="add-post-type-menu-item" id="<?php esc_attr_e( 'submit-posttype-' . $post_type_name ); ?>" />
    805                                 <span class="spinner"></span>
    806                         </span>
    807                 </p>
    808 
    809         </div><!-- /.posttypediv -->
     800                </div><!-- /.posttypediv -->
     801        </li>
    810802        <?php
    811803}
    812804
     
    818810 * @param string $object Not used.
    819811 * @param string $taxonomy The taxonomy object.
    820812 */
    821 function wp_nav_menu_item_taxonomy_meta_box( $object, $taxonomy ) {
     813function wp_nav_menu_item_taxonomy_meta_box( $taxonomy ) {
    822814        global $nav_menu_selected_id;
    823         $taxonomy_name = $taxonomy['args']->name;
     815        $taxonomy_name = $taxonomy->name;
    824816
    825817        // paginate browsing for large numbers of objects
    826818        $per_page = 50;
     
    842834
    843835        $terms = get_terms( $taxonomy_name, $args );
    844836
    845         if ( ! $terms || is_wp_error($terms) ) {
     837        if ( is_wp_error( $terms ) ) {
    846838                echo '<p>' . __( 'No items.' ) . '</p>';
    847839                return;
    848840        }
     
    891883        );
    892884
    893885        ?>
    894         <div id="taxonomy-<?php echo $taxonomy_name; ?>" class="taxonomydiv">
    895                 <ul id="taxonomy-<?php echo $taxonomy_name; ?>-tabs" class="taxonomy-tabs add-menu-item-tabs">
    896                         <li <?php echo ( 'most-used' == $current_tab ? ' class="tabs"' : '' ); ?>><a class="nav-tab-link" href="<?php if ( $nav_menu_selected_id ) echo esc_url(add_query_arg($taxonomy_name . '-tab', 'most-used', remove_query_arg($removed_args))); ?>#tabs-panel-<?php echo $taxonomy_name; ?>-pop"><?php _e('Most Used'); ?></a></li>
    897                         <li <?php echo ( 'all' == $current_tab ? ' class="tabs"' : '' ); ?>><a class="nav-tab-link" href="<?php if ( $nav_menu_selected_id ) echo esc_url(add_query_arg($taxonomy_name . '-tab', 'all', remove_query_arg($removed_args))); ?>#tabs-panel-<?php echo $taxonomy_name; ?>-all"><?php _e('View All'); ?></a></li>
    898                         <li <?php echo ( 'search' == $current_tab ? ' class="tabs"' : '' ); ?>><a class="nav-tab-link" href="<?php if ( $nav_menu_selected_id ) echo esc_url(add_query_arg($taxonomy_name . '-tab', 'search', remove_query_arg($removed_args))); ?>#tabs-panel-search-taxonomy-<?php echo $taxonomy_name; ?>"><?php _e('Search'); ?></a></li>
    899                 </ul>
     886        <li class="control-section accordion-section" id="accordion-section-title_tagline">
     887                <h3 title="" tabindex="0" class="accordion-section-title"><?php echo esc_html(  $taxonomy->labels->name ); ?></h3>
     888                <div id="taxonomy-<?php echo esc_attr( $taxonomy_name ); ?>" class="taxonomydiv accordion-section-content">
     889                        <ul id="taxonomy-<?php echo esc_attr( $taxonomy_name ); ?>-tabs" class="taxonomy-tabs add-menu-item-tabs">
     890                                <li <?php echo ( 'most-used' == $current_tab ? ' class="tabs"' : '' ); ?>><a class="nav-tab-link" data-type="tabs-panel-<?php echo esc_attr( $taxonomy_name ); ?>-pop" href="<?php if ( $nav_menu_selected_id ) echo esc_url( add_query_arg($taxonomy_name . '-tab', 'most-used', remove_query_arg( $removed_args ) ) . '#tabs-panel-' . $taxonomy_name . '-pop' ); ?>"><?php _e( 'Most Used' ); ?></a></li>
     891                                <li <?php echo ( 'all' == $current_tab ? ' class="tabs"' : '' ); ?>><a class="nav-tab-link" data-type="tabs-panel-<?php echo esc_attr( $taxonomy_name ); ?>-all" href="<?php if ( $nav_menu_selected_id ) echo esc_url( add_query_arg( $taxonomy_name . '-tab', 'all', remove_query_arg( $removed_args ) ) . '#tabs-panel-' . $taxonomy_name . '-all' ); ?>"><?php _e( 'View All' ); ?></a></li>
     892                                <li <?php echo ( 'search' == $current_tab ? ' class="tabs"' : '' ); ?>><a class="nav-tab-link" data-type="tabs-panel-search-taxonomy-<?php echo esc_attr( $taxonomy_name ); ?>" href="<?php if ( $nav_menu_selected_id ) echo esc_url( add_query_arg( $taxonomy_name . '-tab', 'search', remove_query_arg( $removed_args ) ) ); ?>#tabs-panel-search-taxonomy-<?php echo esc_attr( $taxonomy_name ); ?>"><?php _e( 'Search' ); ?></a></li>
     893                        </ul>
    900894
    901                 <div id="tabs-panel-<?php echo $taxonomy_name; ?>-pop" class="tabs-panel <?php
    902                         echo ( 'most-used' == $current_tab ? 'tabs-panel-active' : 'tabs-panel-inactive' );
    903                 ?>">
    904                         <ul id="<?php echo $taxonomy_name; ?>checklist-pop" class="categorychecklist form-no-clear" >
    905                                 <?php
    906                                 $popular_terms = get_terms( $taxonomy_name, array( 'orderby' => 'count', 'order' => 'DESC', 'number' => 10, 'hierarchical' => false ) );
    907                                 $args['walker'] = $walker;
    908                                 echo walk_nav_menu_tree( array_map('wp_setup_nav_menu_item', $popular_terms), 0, (object) $args );
    909                                 ?>
    910                         </ul>
    911                 </div><!-- /.tabs-panel -->
     895                        <div id="tabs-panel-<?php echo esc_attr( $taxonomy_name ); ?>-pop" class="tabs-panel <?php
     896                                echo ( 'most-used' == $current_tab ? 'tabs-panel-active' : 'tabs-panel-inactive' );
     897                        ?>">
     898                                <ul id="<?php echo esc_attr( $taxonomy_name ); ?>checklist-pop" class="categorychecklist form-no-clear" >
     899                                        <?php
     900                                        $popular_terms = get_terms( $taxonomy_name, array( 'orderby' => 'count', 'order' => 'DESC', 'number' => 10, 'hierarchical' => false ) );
     901                                        $args['walker'] = $walker;
     902                                        echo walk_nav_menu_tree( array_map( 'wp_setup_nav_menu_item', $popular_terms ), 0, (object) $args );
     903                                        ?>
     904                                </ul>
     905                        </div><!-- /.tabs-panel -->
    912906
    913                 <div id="tabs-panel-<?php echo $taxonomy_name; ?>-all" class="tabs-panel tabs-panel-view-all <?php
    914                         echo ( 'all' == $current_tab ? 'tabs-panel-active' : 'tabs-panel-inactive' );
    915                 ?>">
    916                         <?php if ( ! empty( $page_links ) ) : ?>
    917                                 <div class="add-menu-item-pagelinks">
    918                                         <?php echo $page_links; ?>
    919                                 </div>
    920                         <?php endif; ?>
    921                         <ul id="<?php echo $taxonomy_name; ?>checklist" data-wp-lists="list:<?php echo $taxonomy_name?>" class="categorychecklist form-no-clear">
    922                                 <?php
    923                                 $args['walker'] = $walker;
    924                                 echo walk_nav_menu_tree( array_map('wp_setup_nav_menu_item', $terms), 0, (object) $args );
    925                                 ?>
    926                         </ul>
    927                         <?php if ( ! empty( $page_links ) ) : ?>
    928                                 <div class="add-menu-item-pagelinks">
    929                                         <?php echo $page_links; ?>
    930                                 </div>
    931                         <?php endif; ?>
    932                 </div><!-- /.tabs-panel -->
     907                        <div id="tabs-panel-<?php echo esc_attr( $taxonomy_name ); ?>-all" class="tabs-panel tabs-panel-view-all <?php
     908                                echo ( 'all' == $current_tab ? 'tabs-panel-active' : 'tabs-panel-inactive' );
     909                        ?>">
     910                                <?php if ( ! empty( $page_links ) ) : ?>
     911                                        <div class="add-menu-item-pagelinks">
     912                                                <?php echo $page_links; ?>
     913                                        </div>
     914                                <?php endif; ?>
     915                                <ul id="<?php echo esc_attr( $taxonomy_name ); ?>checklist" data-wp-lists="list:<?php echo esc_attr( $taxonomy_name ); ?>" class="categorychecklist form-no-clear">
     916                                        <?php
     917                                        $args['walker'] = $walker;
     918                                        echo walk_nav_menu_tree( array_map( 'wp_setup_nav_menu_item', $terms ), 0, (object) $args );
     919                                        ?>
     920                                </ul>
     921                                <?php if ( ! empty( $page_links ) ) : ?>
     922                                        <div class="add-menu-item-pagelinks">
     923                                                <?php echo $page_links; ?>
     924                                        </div>
     925                                <?php endif; ?>
     926                        </div><!-- /.tabs-panel -->
    933927
    934                 <div class="tabs-panel <?php
    935                         echo ( 'search' == $current_tab ? 'tabs-panel-active' : 'tabs-panel-inactive' );
    936                 ?>" id="tabs-panel-search-taxonomy-<?php echo $taxonomy_name; ?>">
    937                         <?php
    938                         if ( isset( $_REQUEST['quick-search-taxonomy-' . $taxonomy_name] ) ) {
    939                                 $searched = esc_attr( $_REQUEST['quick-search-taxonomy-' . $taxonomy_name] );
    940                                 $search_results = get_terms( $taxonomy_name, array( 'name__like' => $searched, 'fields' => 'all', 'orderby' => 'count', 'order' => 'DESC', 'hierarchical' => false ) );
    941                         } else {
    942                                 $searched = '';
    943                                 $search_results = array();
    944                         }
    945                         ?>
    946                         <p class="quick-search-wrap">
    947                                 <input type="search" class="quick-search input-with-default-title" title="<?php esc_attr_e('Search'); ?>" value="<?php echo $searched; ?>" name="quick-search-taxonomy-<?php echo $taxonomy_name; ?>" />
    948                                 <span class="spinner"></span>
    949                                 <?php submit_button( __( 'Search' ), 'button-small quick-search-submit button-secondary hide-if-js', 'submit', false, array( 'id' => 'submit-quick-search-taxonomy-' . $taxonomy_name ) ); ?>
    950                         </p>
     928                        <div class="tabs-panel <?php
     929                                echo ( 'search' == $current_tab ? 'tabs-panel-active' : 'tabs-panel-inactive' );
     930                        ?>" id="tabs-panel-search-taxonomy-<?php echo esc_attr( $taxonomy_name ); ?>">
     931                                <?php
     932                                if ( isset( $_REQUEST['quick-search-taxonomy-' . $taxonomy_name] ) ) {
     933                                        $searched = esc_attr( $_REQUEST['quick-search-taxonomy-' . $taxonomy_name] );
     934                                        $search_results = get_terms( $taxonomy_name, array( 'name__like' => $searched, 'fields' => 'all', 'orderby' => 'count', 'order' => 'DESC', 'hierarchical' => false ) );
     935                                } else {
     936                                        $searched = '';
     937                                        $search_results = array();
     938                                }
     939                                ?>
     940                                <p class="quick-search-wrap">
     941                                        <input type="search" class="quick-search input-with-default-title" title="<?php esc_attr_e('Search'); ?>" value="<?php echo esc_attr( $searched ); ?>" name="quick-search-taxonomy-<?php echo esc_attr( $taxonomy_name ); ?>" />
     942                                        <span class="spinner"></span>
     943                                        <?php submit_button( __( 'Search' ), 'button-small quick-search-submit button-secondary hide-if-js', 'submit', false, array( 'id' => 'submit-quick-search-taxonomy-' . $taxonomy_name ) ); ?>
     944                                </p>
    951945
    952                         <ul id="<?php echo $taxonomy_name; ?>-search-checklist" data-wp-lists="list:<?php echo $taxonomy_name?>" class="categorychecklist form-no-clear">
    953                         <?php if ( ! empty( $search_results ) && ! is_wp_error( $search_results ) ) : ?>
    954                                 <?php
    955                                 $args['walker'] = $walker;
    956                                 echo walk_nav_menu_tree( array_map('wp_setup_nav_menu_item', $search_results), 0, (object) $args );
    957                                 ?>
    958                         <?php elseif ( is_wp_error( $search_results ) ) : ?>
    959                                 <li><?php echo $search_results->get_error_message(); ?></li>
    960                         <?php elseif ( ! empty( $searched ) ) : ?>
    961                                 <li><?php _e('No results found.'); ?></li>
    962                         <?php endif; ?>
    963                         </ul>
    964                 </div><!-- /.tabs-panel -->
     946                                <ul id="<?php echo esc_attr( $taxonomy_name ); ?>-search-checklist" data-wp-lists="list:<?php echo esc_attr( $taxonomy_name ); ?>" class="categorychecklist form-no-clear">
     947                                <?php if ( ! empty( $search_results ) && ! is_wp_error( $search_results ) ) : ?>
     948                                        <?php
     949                                        $args['walker'] = $walker;
     950                                        echo walk_nav_menu_tree( array_map('wp_setup_nav_menu_item', $search_results), 0, (object) $args );
     951                                        ?>
     952                                <?php elseif ( is_wp_error( $search_results ) ) : ?>
     953                                        <li><?php echo $search_results->get_error_message(); ?></li>
     954                                <?php elseif ( ! empty( $searched ) ) : ?>
     955                                        <li><?php _e('No results found.'); ?></li>
     956                                <?php endif; ?>
     957                                </ul>
     958                        </div><!-- /.tabs-panel -->
    965959
    966                 <p class="button-controls">
    967                         <span class="list-controls">
    968                                 <a href="<?php
    969                                         echo esc_url(add_query_arg(
    970                                                 array(
    971                                                         $taxonomy_name . '-tab' => 'all',
    972                                                         'selectall' => 1,
    973                                                 ),
    974                                                 remove_query_arg($removed_args)
    975                                         ));
    976                                 ?>#taxonomy-<?php echo $taxonomy_name; ?>" class="select-all"><?php _e('Select All'); ?></a>
    977                         </span>
    978 
    979                         <span class="add-to-menu">
    980                                 <input type="submit"<?php wp_nav_menu_disabled_check( $nav_menu_selected_id ); ?> class="button-secondary submit-add-to-menu right" value="<?php esc_attr_e( __( 'Add to Menu' ) ); ?>" name="add-taxonomy-menu-item" id="<?php esc_attr_e( 'submit-taxonomy-' . $taxonomy_name ); ?>" />
    981                                 <span class="spinner"></span>
    982                         </span>
    983                 </p>
    984 
    985         </div><!-- /.taxonomydiv -->
     960                        <p class="button-controls">
     961                                <span class="list-controls">
     962                                        <a href="<?php echo esc_url( add_query_arg( array( $taxonomy_name . '-tab' => 'all', 'selectall' => 1 ), remove_query_arg( $removed_args ) ) . '#taxonomy-' .  $taxonomy_name ); ?>" class="select-all"><?php _e( 'Select All' ); ?></a>
     963                                </span>
     964                                <span class="add-to-menu">
     965                                        <input type="submit"<?php disabled( $nav_menu_selected_id, 0 ); ?> class="button-secondary submit-add-to-menu right" value="<?php esc_attr_e( 'Add to Menu' ); ?>" name="add-taxonomy-menu-item" id="submit-taxonomy-<?php echo esc_attr( $taxonomy_name ); ?>" />
     966                                        <span class="spinner"></span>
     967                                </span>
     968                        </p>
     969                </div><!-- /.taxonomydiv -->
     970        </li>
    986971        <?php
    987972}
    988973
  • wp-admin/js/nav-menu.js

     
    5151                        this.messageFadeIn();
    5252
    5353                        this.initAccessibility();
    54 
    55                         this.initToggles();
    5654                },
    5755
    5856                jQueryExtensions : function() {
     
    386384                        messages.slideDown( 'slow' );
    387385                },
    388386
    389                 initToggles : function() {
    390                         // init postboxes
    391                         postboxes.add_postbox_toggles('nav-menus');
    392 
    393                         // adjust columns functions for menus UI
    394                         columns.useCheckboxesForHidden();
    395                         columns.checked = function(field) {
    396                                 $('.field-' + field).removeClass('hidden-field');
    397                         }
    398                         columns.unchecked = function(field) {
    399                                 $('.field-' + field).addClass('hidden-field');
    400                         }
    401                         // hide fields
    402                         api.menuList.hideAdvancedMenuItemFields();
    403                 },
    404 
    405387                initSortables : function() {
    406388                        var currentDepth = 0, originalDepth, minDepth, maxDepth,
    407389                                prev, next, prevBottom, nextThreshold, helperHeight, transport,
     
    795777                                        target = $(e.target);
    796778
    797779                                if ( target.hasClass('nav-tab-link') ) {
    798                                         panelId = /#(.*)$/.exec(e.target.href);
    799                                         if ( panelId && panelId[1] )
    800                                                 panelId = panelId[1]
    801                                         else
    802                                                 return false;
    803780
    804                                         wrapper = target.parents('.inside').first();
     781                                        panelId = target.data( 'type' );
    805782
     783                                        wrapper = target.parents('.accordion-section-content').first();
     784
    806785                                        // upon changing tabs, we want to uncheck all checkboxes
    807786                                        $('input', wrapper).removeAttr('checked');
    808787
     
    815794                                        // select the search bar
    816795                                        $('.quick-search', wrapper).focus();
    817796
    818                                         return false;
     797                                        e.preventDefault();
    819798                                } else if ( target.hasClass('select-all') ) {
    820799                                        selectAreaMatch = /#(.*)$/.exec(e.target.href);
    821800                                        if ( selectAreaMatch && selectAreaMatch[1] ) {
  • wp-admin/nav-menus.php

     
    2323        wp_die( __( 'Cheatin&#8217; uh?' ) );
    2424
    2525wp_enqueue_script( 'nav-menu' );
     26wp_enqueue_script( 'accordion' );
    2627
    2728if ( wp_is_mobile() )
    2829        wp_enqueue_script( 'jquery-touch-punch' );
     
    421422
    422423add_filter('admin_body_class', 'wp_nav_menu_max_depth');
    423424
    424 wp_nav_menu_setup();
     425// Register advanced menu items (columns)
     426add_filter( 'manage_nav-menus_columns', 'wp_nav_menu_manage_columns');
     427
    425428wp_initial_nav_menu_meta_boxes();
    426429
    427430if ( ! current_theme_supports( 'menus' ) && ! wp_get_nav_menus() )
     
    503506                        <input type="hidden" name="menu" id="nav-menu-meta-object-id" value="<?php echo esc_attr( $nav_menu_selected_id ); ?>" />
    504507                        <input type="hidden" name="action" value="add-menu-item" />
    505508                        <?php wp_nonce_field( 'add-menu_item', 'menu-settings-column-nonce' ); ?>
    506                         <?php do_meta_boxes( 'nav-menus', 'side', null ); ?>
     509                        <div id="side-sortables" class="accordion-container">
     510                                <ul class="outer-border">
     511                                        <?php wp_nav_menu_setup(); ?>
     512                                </ul>
     513                        </div>
    507514                </form>
    508515
    509516        </div><!-- /#menu-settings-column -->