如果您的代码工作正常,唯一的问题是它在没有人登录时显示,请尝试下面的代码。因为现在你说的是“嘿,WP,呼出这个”——所以它就这样做了。您需要将其更改为:“嘿,WP,如果用户已登录,请显示其页面的链接,如果未显示登录链接”,如下所示:
<?php
if ( is_user_logged_in() ) {
echo \'<a href="\' . home_url() . \'/author/\' . get_the_author_meta( \'user_login\', wp_get_current_user()->ID ) . \'"> My personal page</a>\';
} else {
echo \'<a href="\' . wp_login_url() . \'" title="Login">Login</a>\';
}
?>
现在,要解决带有空格的用户名问题,可以尝试以下代码:
<?php
if ( is_user_logged_in() ) {
global $current_user;
get_currentuserinfo();
echo \'<a href="\' . get_author_posts_url($current_user->ID) . \'"> My personal page</a>\';
} else {
echo \'<a href="\' . wp_login_url() . \'" title="Login">Login</a>\';
}
?>
Reference: