Changeset 61057
- Timestamp:
- 10/24/2025 04:02:03 AM (3 weeks ago)
- Location:
- trunk
- Files:
-
- 2 edited
-
src/wp-includes/author-template.php (modified) (1 diff)
-
tests/phpunit/tests/user/getTheModifiedAuthor.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/wp-includes/author-template.php
r60644 r61057 87 87 * 88 88 * @since 2.8.0 89 * 90 * @return string|void The author's display name, empty string if unknown. 91 */ 92 function get_the_modified_author() { 93 $last_id = get_post_meta( get_post()->ID, '_edit_last', true ); 94 95 if ( $last_id ) { 96 $last_user = get_userdata( $last_id ); 97 98 /** 99 * Filters the display name of the author who last edited the current post. 100 * 101 * @since 2.8.0 102 * 103 * @param string $display_name The author's display name, empty string if unknown. 104 */ 105 return apply_filters( 'the_modified_author', $last_user ? $last_user->display_name : '' ); 106 } 89 * @since 6.9.0 Added the `$post` parameter. Unknown return value is now explicitly null instead of void. 90 * 91 * @param int|WP_Post|null $post Optional. Post ID or post object. Default is global `$post` object. 92 * @return string|null The author's display name. Empty string if user is unavailable. Null if there was no last editor or the post is invalid. 93 */ 94 function get_the_modified_author( $post = null ) { 95 $post = get_post( $post ); 96 if ( ! $post ) { 97 return null; 98 } 99 100 $last_id = get_post_meta( $post->ID, '_edit_last', true ); 101 if ( ! $last_id ) { 102 return null; 103 } 104 $last_user = get_userdata( $last_id ); 105 106 /** 107 * Filters the display name of the author who last edited the current post. 108 * 109 * @since 2.8.0 110 * 111 * @param string $display_name The author's display name, empty string if user is unavailable. 112 */ 113 return apply_filters( 'the_modified_author', $last_user ? $last_user->display_name : '' ); 107 114 } 108 115 -
trunk/tests/phpunit/tests/user/getTheModifiedAuthor.php
r55755 r61057 38 38 parent::set_up(); 39 39 40 $GLOBALS['post'] = self::$post_id;40 $GLOBALS['post'] = get_post( self::$post_id ); 41 41 } 42 42 … … 57 57 $this->assertSame( '', get_the_modified_author() ); 58 58 } 59 60 /** 61 * @ticket 64104 62 */ 63 public function test_get_the_modified_author_when_post_global_does_not_exist() { 64 $GLOBALS['post'] = null; 65 $this->assertNull( get_the_modified_author() ); 66 } 67 68 /** 69 * @ticket 64104 70 */ 71 public function test_get_the_modified_author_when_invalid_post() { 72 $this->assertNull( get_the_modified_author( -1 ) ); 73 } 74 75 /** 76 * @ticket 64104 77 */ 78 public function test_get_the_modified_author_for_another_post() { 79 $expected_display_name = 'Test Editor'; 80 81 $editor_id = self::factory()->user->create( 82 array( 83 'role' => 'editor', 84 'user_login' => 'test_editor', 85 'display_name' => $expected_display_name, 86 'description' => 'test_editor', 87 ) 88 ); 89 90 $another_post_id = self::factory()->post->create(); 91 92 $this->assertNull( get_the_modified_author( $another_post_id ) ); 93 $this->assertNull( get_the_modified_author( get_post( $another_post_id ) ) ); 94 95 add_post_meta( $another_post_id, '_edit_last', $editor_id ); 96 $this->assertSame( $expected_display_name, get_the_modified_author( $another_post_id ) ); 97 $this->assertSame( $expected_display_name, get_the_modified_author( get_post( $another_post_id ) ) ); 98 } 59 99 }
Note: See TracChangeset
for help on using the changeset viewer.