From e1e3467c5ef40ee0da86b6b8f6676520aa6eb422 Mon Sep 17 00:00:00 2001 From: Sergey Biryukov Date: Mon, 7 Jan 2019 12:53:22 +0000 Subject: [PATCH] Pages, Post Types: Escape CSS classes in `Walker_Page::start_el()` after the `page_css_class` filter runs. Don't add an empty `class` attribute if there are no classes, for consistency with `Walker_Nav_Menu::start_el()`. Props abhijitrakas, mukesh27. Fixes #44880. git-svn-id: https://develop.svn.wordpress.org/trunk@44415 602fd350-edb4-49c9-b593-d223f7449a82 --- src/wp-includes/class-walker-page.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/wp-includes/class-walker-page.php b/src/wp-includes/class-walker-page.php index 838abe3180..398d1c8c57 100644 --- a/src/wp-includes/class-walker-page.php +++ b/src/wp-includes/class-walker-page.php @@ -148,6 +148,7 @@ class Walker_Page extends Walker { * @param int $current_page ID of the current page. */ $css_classes = implode( ' ', apply_filters( 'page_css_class', $css_class, $page, $depth, $args, $current_page ) ); + $css_classes = $css_classes ? ' class="' . esc_attr( $css_classes ) . '"' : ''; if ( '' === $page->post_title ) { /* translators: %d: ID of a post */ @@ -186,7 +187,7 @@ class Walker_Page extends Walker { } $output .= $indent . sprintf( - '
  • %s%s%s', + '%s%s%s', $css_classes, $attributes, $args['link_before'],