Remove 链接的教程中使用的过滤器和函数,并将其替换为以下代码:
add_filter( \'get_the_author_user_url\', \'guest_author_url\' );
add_filter( \'the_author\', \'guest_author_link\' );
add_filter( \'get_the_author_display_name\', \'guest_author_name\' );
function guest_author_url($url) {
global $post;
$guest_url = get_post_meta( $post->ID, \'guest-url\', true );
if ( filter_var($guest_url, FILTER_VALIDATE_URL) ) {
return $guest_url;
} elseif ( get_post_meta( $post->ID, \'guest-author\', true ) ) {
return \'#\';
}
return $url;
}
function guest_author_link($name) {
global $post;
$guest_url = get_post_meta( $post->ID, \'guest-url\', true );
$guest_name = get_post_meta( $post->ID, \'guest-author\', true );
if ( $guest_name && filter_var($guest_url, FILTER_VALIDATE_URL) ) {
return \'<a href="\' . esc_url( $guest_url ) . \'" title="\' . esc_attr( sprintf(__("Visit %s’s website"), $guest_name) ) . \'" rel="author external">\' . $guest_name . \'</a>\';
} elseif( $guest_name ) {
return $guest_name;
}
return $name;
}
function guest_author_name( $name ) {
global $post;
$guest_name = get_post_meta( $post->ID, \'guest-author\', true );
if ( $guest_name ) return $guest_name;
return $name;
}
现在您可以使用
the_author_link()
查看您的客座作者的姓名和链接,但请注意,如果您的客座作者
not url函数将显示链接同一页面的来宾作者的姓名(
href="#"
).
如果不喜欢此行为,请在模板文件中替换the_author_link()
具有the_author()
如果你的客座作者有名字和url,那么会显示链接,否则你只会看到名字。
请注意,来宾urlmust be a valid url (以http://or https:///开头),否则将不会显示。