From 1cb2ed28880e1c643bee6fd91dad4cfd34911566 Mon Sep 17 00:00:00 2001 From: Jb Audras Date: Fri, 24 Jan 2025 22:58:32 +0000 Subject: [PATCH] Posts, Post Types: Remove `title` attribute from `the_shortlink()`. Since [13683], `the_shortlink()` has included a `title` attribute. By default, that gives the sanitized post title, and it does not sanitize custom text. Given the low value of this attribute, this changeset removes it. Props sabernhardt, audrasjb, joedolson. Fixes #62838. See #24766. git-svn-id: https://develop.svn.wordpress.org/trunk@59703 602fd350-edb4-49c9-b593-d223f7449a82 --- src/wp-includes/link-template.php | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/src/wp-includes/link-template.php b/src/wp-includes/link-template.php index da57ebd64df80..5d49d7169db60 100644 --- a/src/wp-includes/link-template.php +++ b/src/wp-includes/link-template.php @@ -4247,11 +4247,12 @@ function wp_shortlink_header() { * Call like the_shortlink( __( 'Shortlinkage FTW' ) ) * * @since 3.0.0 + * @since 6.8.0 Removed title attribute. * - * @param string $text Optional The link text or HTML to be displayed. Defaults to 'This is the short link.' - * @param string $title Optional The tooltip for the link. Must be sanitized. Defaults to the sanitized post title. - * @param string $before Optional HTML to display before the link. Default empty. - * @param string $after Optional HTML to display after the link. Default empty. + * @param string $text Optional. The link text or HTML to be displayed. Defaults to 'This is the short link.' + * @param string $title Unused. + * @param string $before Optional. HTML to display before the link. Default empty. + * @param string $after Optional. HTML to display after the link. Default empty. */ function the_shortlink( $text = '', $title = '', $before = '', $after = '' ) { $post = get_post(); @@ -4260,14 +4261,10 @@ function the_shortlink( $text = '', $title = '', $before = '', $after = '' ) { $text = __( 'This is the short link.' ); } - if ( empty( $title ) ) { - $title = the_title_attribute( array( 'echo' => false ) ); - } - $shortlink = wp_get_shortlink( $post->ID ); if ( ! empty( $shortlink ) ) { - $link = '' . $text . ''; + $link = '' . $text . ''; /** * Filters the short link anchor tag for a post. @@ -4277,7 +4274,7 @@ function the_shortlink( $text = '', $title = '', $before = '', $after = '' ) { * @param string $link Shortlink anchor tag. * @param string $shortlink Shortlink URL. * @param string $text Shortlink's text. - * @param string $title Shortlink's title attribute. + * @param string $title Shortlink's title attribute. Unused. */ $link = apply_filters( 'the_shortlink', $link, $shortlink, $text, $title ); echo $before, $link, $after;