Get current users post URL?

时间:2014-01-19 作者:mr_bythatmuch

我一直在论坛上搜寻,但找不到解决方法。如果有人能帮忙,我们将不胜感激!我正在尝试显示指向当前用户作者页的链接(所有用户都有作者权限)。我现在正在使用这个:

<a href="<?php echo home_url() . \'/author/\' . get_the_author_meta( \'user_login\', wp_get_current_user()->ID ); ?>" >My personal page</a>
问题是,当没有用户登录时,会显示author链接。如何仅显示登录用户的作者链接?

2 个回复
SO网友:Borek

如果您的代码工作正常,唯一的问题是它在没有人登录时显示,请尝试下面的代码。因为现在你说的是“嘿,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:

SO网友:Maruti Mohanty

@用户45381必须使用get_author_posts_url 随着is_user_logged_in 获取作者页面。

您可以使用以下方法完成此操作:--

<?php
    if ( is_user_logged_in() ) {
        echo \'<a href="\' . get_author_posts_url( get_current_user_id() ) . \'"> My personal page</a>\';
    } else {
        echo \'<a href="\' . wp_login_url() . \'" title="Login">Login</a>\';
    }
?>

结束

相关推荐

从QUERY_POSTS切换到wp_Query,分页不再起作用

将静态首页上的循环从query\\u posts切换到wp\\u query。除分页链接(以前正常工作)外,其他所有链接都正常工作。示例可现场查看here 在“工作”部分。这是我的循环: <?php $paged = (get_query_var(\'page\')) ? get_query_var(\'page\') : 1; $args = array(\'category_name\'=>\'portfolio\',\'posts_per_pag