Media: Decode HTML entities in `author_name` before sending to JS.

In `wp_prepare_attachment_for_js()`:
- Normalize behavior when author does not exist by returning '(no author)' for `authorName` in these cases.
- Decode HTML entities in `author_name`.
- Add tests for both of the above.

Props arshidkv12, ocean90, sloisel, mikeschroder.
Fixes #39955.
Built from https://develop.svn.wordpress.org/trunk@40809


git-svn-id: http://core.svn.wordpress.org/trunk@40667 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
Mike Schroder 2017-05-20 02:23:43 +00:00
parent 5c671464de
commit db5091eaa1
2 changed files with 6 additions and 2 deletions

View File

@ -3098,7 +3098,11 @@ function wp_prepare_attachment_for_js( $attachment ) {
);
$author = new WP_User( $attachment->post_author );
$response['authorName'] = $author->display_name;
if ( $author->exists() ) {
$response['authorName'] = html_entity_decode( $author->display_name, ENT_QUOTES, get_bloginfo( 'charset' ) );
} else {
$response['authorName'] = __( '(no author)' );
}
if ( $attachment->post_parent ) {
$post_parent = get_post( $attachment->post_parent );

View File

@ -4,7 +4,7 @@
*
* @global string $wp_version
*/
$wp_version = '4.8-beta1-40808';
$wp_version = '4.8-beta1-40809';
/**
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.