diff --git a/wp-includes/widgets.php b/wp-includes/widgets.php index 0647338a46..d269d351c8 100644 --- a/wp-includes/widgets.php +++ b/wp-includes/widgets.php @@ -332,12 +332,13 @@ function wp_widget_pages( $args ) { $title = empty( $options['title'] ) ? __( 'Pages' ) : $options['title']; $sortby = empty( $options['sortby'] ) ? 'menu_order' : $options['sortby']; + $exclude = empty( $options['exclude'] ) ? '' : '&exclude=' . $options['exclude']; if ( $sortby == 'menu_order' ) { $sortby = 'menu_order, post_title'; } - $out = wp_list_pages( 'title_li=&echo=0&sort_column=' . $sortby ); + $out = wp_list_pages( 'title_li=&echo=0&sort_column=' . $sortby . $exclude ); if ( !empty( $out ) ) { ?> @@ -363,12 +364,15 @@ function wp_widget_pages_control() { } else { $newoptions['sortby'] = 'menu_order'; } + + $newoptions['exclude'] = strip_tags( stripslashes( $_POST['pages-exclude'] ) ); } if ( $options != $newoptions ) { $options = $newoptions; update_option('widget_pages', $options); } $title = attribute_escape($options['title']); + $exclude = attribute_escape( $options['exclude'] ); ?>
+
+