| 1 | diff --git a/wp-includes/post-template.php b/wp-includes/post-template.php |
|---|
| 2 | index eac548b0b0635481eb0803569b2df900b4f7216f..495aa9125e61e06b1bb3620fe0e21ce8b6ac0fb3 100644 |
|---|
| 3 | --- a/wp-includes/post-template.php |
|---|
| 4 | +++ b/wp-includes/post-template.php |
|---|
| 5 | @@ -882,7 +882,7 @@ function wp_list_pages($args = '') { |
|---|
| 6 | * @param array|string $args |
|---|
| 7 | */ |
|---|
| 8 | function wp_page_menu( $args = array() ) { |
|---|
| 9 | - $defaults = array('sort_column' => 'menu_order, post_title', 'menu_class' => 'menu', 'echo' => true, 'link_before' => '', 'link_after' => ''); |
|---|
| 10 | + $defaults = array('sort_column' => 'menu_order, post_title', 'container' => 'div', 'menu_class' => 'menu', 'echo' => true, 'link_before' => '', 'link_after' => ''); |
|---|
| 11 | $args = wp_parse_args( $args, $defaults ); |
|---|
| 12 | $args = apply_filters( 'wp_page_menu_args', $args ); |
|---|
| 13 | |
|---|
| 14 | @@ -918,7 +918,10 @@ function wp_page_menu( $args = array() ) { |
|---|
| 15 | if ( $menu ) |
|---|
| 16 | $menu = '<ul>' . $menu . '</ul>'; |
|---|
| 17 | |
|---|
| 18 | - $menu = '<div class="' . esc_attr($args['menu_class']) . '">' . $menu . "</div>\n"; |
|---|
| 19 | + $allowed_tags = apply_filters( 'wp_nav_menu_container_allowedtags', array( 'div', 'nav' ) ); |
|---|
| 20 | + $container = ( in_array( $args[ 'container' ], $allowed_tags ) ? $args[ 'container' ] : 'div' ); |
|---|
| 21 | + |
|---|
| 22 | + $menu = '<'. $container .' class="' . esc_attr($args['menu_class']) . '">' . $menu . "</". $container .">\n"; |
|---|
| 23 | $menu = apply_filters( 'wp_page_menu', $menu, $args ); |
|---|
| 24 | if ( $args['echo'] ) |
|---|
| 25 | echo $menu; |
|---|