Ticket #30355: 30355.4.diff
| File 30355.4.diff, 3.6 KB (added by , 11 years ago) |
|---|
-
src/wp-includes/author-template.php
223 223 } 224 224 225 225 /** 226 * Displayan HTML link to the author page of the author of the current post.226 * Retrieves an HTML link to the author page of the author of the current post. 227 227 * 228 * Does just echo get_author_posts_url() function, like the others do. The 229 * reason for this, is that another function is used to help in printing the 230 * link to the author's posts. 228 * Returns an HTML-formatted link using get_author_posts_url(). 231 229 * 232 * @link https://codex.wordpress.org/Template_Tags/the_author_posts_link 233 * @since 1.2.0 230 * @since 4.4.0 234 231 * 235 232 * @global object $authordata The current author's DB object. 236 233 * 237 * @ param string $deprecated Deprecated.234 * @return string An HTML link to the author page. 238 235 */ 239 function the_author_posts_link($deprecated = '') { 240 if ( !empty( $deprecated ) ) 241 _deprecated_argument( __FUNCTION__, '2.1' ); 242 236 function get_the_author_posts_link() { 243 237 global $authordata; 244 238 if ( ! is_object( $authordata ) ) { 245 239 return; … … 259 253 * 260 254 * @param string $link HTML link. 261 255 */ 262 echoapply_filters( 'the_author_posts_link', $link );256 return apply_filters( 'the_author_posts_link', $link ); 263 257 } 264 258 265 259 /** 260 * Displays an HTML link to the author page of the author of the current post. 261 * 262 * @since 1.2.0 263 * @since 4.4.0 Converted into a wrapper for get_the_author_posts_link() 264 * 265 * @param string $deprecated Unused. 266 */ 267 function the_author_posts_link( $deprecated = '' ) { 268 if ( ! empty( $deprecated ) ) { 269 _deprecated_argument( __FUNCTION__, '2.1' ); 270 } 271 echo get_the_author_posts_link(); 272 } 273 274 /** 266 275 * Retrieve the URL to the author page for the user with the ID provided. 267 276 * 268 277 * @since 2.1.0 -
tests/phpunit/tests/template/author.php
1 <?php 2 3 /** 4 * A set of unit tests for functions in wp-includes/author-template.php 5 * 6 * @group template 7 */ 8 class Tests_Author_Template extends WP_UnitTestCase { 9 10 /** 11 * @ticket 30355 12 */ 13 public function test_get_the_author_posts_link_no_permalinks() { 14 $author = $this->factory->user->create_and_get( array( 15 'display_name' => 'Foo', 16 'user_nicename' => 'bar' 17 ) ); 18 19 $GLOBALS['authordata'] = $author->data; 20 21 $link = get_the_author_posts_link(); 22 23 $url = sprintf( 'http://%1$s/?author=%2$s', WP_TESTS_DOMAIN, $author->ID ); 24 25 $this->assertContains( $url, $link ); 26 $this->assertContains( 'Posts by Foo', $link ); 27 $this->assertContains( '>Foo</a>', $link ); 28 29 unset( $GLOBALS['authordata'] ); 30 } 31 32 /** 33 * @ticket 30355 34 */ 35 public function test_get_the_author_posts_link_with_permalinks() { 36 global $wp_rewrite; 37 $wp_rewrite->init(); 38 $wp_rewrite->set_permalink_structure( '/%postname%/' ); 39 $wp_rewrite->flush_rules(); 40 41 $author = $this->factory->user->create_and_get( array( 42 'display_name' => 'Foo', 43 'user_nicename' => 'bar' 44 ) ); 45 46 $GLOBALS['authordata'] = $author; 47 48 $link = get_the_author_posts_link(); 49 50 $url = sprintf( 'http://%1$s/author/%2$s/', WP_TESTS_DOMAIN, $author->user_nicename ); 51 52 $this->assertContains( $url, $link ); 53 $this->assertContains( 'Posts by Foo', $link ); 54 $this->assertContains( '>Foo</a>', $link ); 55 56 // Cleanup. 57 $wp_rewrite->set_permalink_structure( '' ); 58 unset( $GLOBALS['authordata'] ); 59 } 60 }
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)