mirror of
https://github.com/WordPress/WordPress.git
synced 2024-09-27 14:53:08 +02:00
General: Add "noopener" to wp_list_bookmarks()
output.
In the bookmarks walker `_walk_bookmarks()`, add a `'noopener'` to the bookmark's `rel` attribute when there's `target` attribute. Adds a new test class for `wp_list_bookmarks()` and tests for this change. Follow-up to [3880], [10712]. Props birgire, costdev, hellofromTonya, mukesh27 , sergeybiryukov, tw2113. Fixes #53839. Built from https://develop.svn.wordpress.org/trunk@52061 git-svn-id: http://core.svn.wordpress.org/trunk@51653 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
a308811553
commit
85fedc53ba
@ -102,13 +102,24 @@ function _walk_bookmarks( $bookmarks, $args = '' ) {
|
|||||||
$title = ' title="' . $title . '"';
|
$title = ' title="' . $title . '"';
|
||||||
}
|
}
|
||||||
$rel = $bookmark->link_rel;
|
$rel = $bookmark->link_rel;
|
||||||
|
|
||||||
|
$target = $bookmark->link_target;
|
||||||
|
if ( '' !== $target ) {
|
||||||
|
if ( is_string( $rel ) && '' !== $rel ) {
|
||||||
|
if ( ! str_contains( $rel, 'noopener' ) ) {
|
||||||
|
$rel = trim( $rel ) . ' noopener';
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$rel = 'noopener';
|
||||||
|
}
|
||||||
|
|
||||||
|
$target = ' target="' . $target . '"';
|
||||||
|
}
|
||||||
|
|
||||||
if ( '' !== $rel ) {
|
if ( '' !== $rel ) {
|
||||||
$rel = ' rel="' . esc_attr( $rel ) . '"';
|
$rel = ' rel="' . esc_attr( $rel ) . '"';
|
||||||
}
|
}
|
||||||
$target = $bookmark->link_target;
|
|
||||||
if ( '' !== $target ) {
|
|
||||||
$target = ' target="' . $target . '"';
|
|
||||||
}
|
|
||||||
$output .= '<a href="' . $the_link . '"' . $rel . $title . $target . '>';
|
$output .= '<a href="' . $the_link . '"' . $rel . $title . $target . '>';
|
||||||
|
|
||||||
$output .= $parsed_args['link_before'];
|
$output .= $parsed_args['link_before'];
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
*
|
*
|
||||||
* @global string $wp_version
|
* @global string $wp_version
|
||||||
*/
|
*/
|
||||||
$wp_version = '5.9-alpha-52060';
|
$wp_version = '5.9-alpha-52061';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
||||||
|
Loading…
Reference in New Issue
Block a user