Make WordPress Core


Ignore:
Timestamp:
05/25/2010 01:49:56 PM (15 years ago)
Author:
nacin
Message:

Allow pages to be added automattically to menus. see #13447.

File:
1 edited

Legend:

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

    r14852 r14878  
    356356                    }
    357357                }
     358
     359                // Store 'auto-add' pages.
     360                $auto_add = ! empty( $_POST['auto-add-pages'] );
     361                $nav_menu_option = (array) get_option( 'nav_menu_options' );
     362                if ( ! isset( $nav_menu_option['auto_add'] ) )
     363                    $nav_menu_option['auto_add'] = array();
     364                if ( $auto_add ) {
     365                    if ( ! in_array( $nav_menu_selected_id, $nav_menu_option['auto_add'] ) )
     366                        $nav_menu_option['auto_add'][] = $nav_menu_selected_id;
     367                } else {
     368                    if ( false !== ( $key = array_search( $nav_menu_selected_id, $nav_menu_option['auto_add'] ) ) )
     369                        unset( $nav_menu_option['auto_add'][$key] );
     370                }
     371                update_option( 'nav_menu_options', $nav_menu_option );
    358372
    359373                wp_defer_term_counting(false);
     
    511525                                </div><!--END .delete-action-->
    512526                                <?php endif; ?>
     527                                <?php if ( !empty( $nav_menu_selected_id ) ) :
     528                                    if ( ! isset( $auto_add ) ) {
     529                                        $auto_add = get_option( 'nav_menu_options' );
     530                                        if ( ! isset( $auto_add['auto_add'] ) )
     531                                            $auto_add = false;
     532                                        elseif ( false !== array_search( $nav_menu_selected_id, $auto_add['auto_add'] ) )
     533                                            $auto_add = true;
     534                                        else
     535                                            $auto_add = false;
     536                                    }   
     537                                ?>
     538                                <div class="auto-add-pages">
     539                                    <label class="howto"><input type="checkbox"<?php checked( $auto_add ); ?> name="auto-add-pages" value="1" /> <?php printf( __('Automatically add new top-level pages to this menu' ), esc_url( admin_url( 'edit.php?post_type=page' ) ) ); ?></label>
     540                                </div>
     541                                <?php endif; ?>
    513542                            </div><!--END .major-publishing-actions-->
    514543                        </div><!--END #submitpost .submitbox-->
Note: See TracChangeset for help on using the changeset viewer.