2013-12-23 13 views
1

我有一個自定義主題與前端電子郵件和Facebook登錄。每個用戶在註冊後默認都會獲得作者角色。如何在author.php中回覆WordPress的作者ID?

我怎麼能在前端回顯用戶標識,通過在後端懸停用戶名稱顯示?我試過這個:

<?php echo the_author_ID(); ?> 

但它不適用於管理員角色和用戶登錄Facebook?該ID顯示在後端盤旋......任何想法?

更新:我將顯示註冊用戶的ID - 在他們的前端author.php中,而不是當前登錄的用戶的ID!

回答

1

它看起來像你正在尋找此,

the_author_meta("ID"); 

the_author_ID(); 

功能已被棄用。

+0

OHHHHH - 現在我知道它不會迴應某些用戶的ID!如果沒有用戶發佈的帖子,它不會顯示ID!你的兩個代碼都能正常工作 - 我已經使用的第二個代碼,但現在我知道這個問題。謝謝 – NewUser

3

它僅針對與user_role=author用戶如果想從Facebook管理員角色和用戶登錄,你可以嘗試get_current_user_id()

+0

嗨 - 不起作用。我之前嘗試過!它顯示了當前登錄用戶的ID,而不是他們的forntend author.php視圖中的reigstered用戶的ID!我編輯了我的問題。 thx – NewUser

+0

所以你想要列出所有reigstered用戶的id。 那麼爲什麼不嘗試get_users?您可以指定get_users作用域 '$ allusers = get_users(); foreach($ allusers as $ cuser){echo $ cuser-> ID; }' – AbsarAkram

+0

現在我知道它不會迴應某些用戶的ID!如果沒有用戶發佈的帖子,它不會顯示ID! thx – NewUser

0

您可以使用get_current_user_id() .Returns當前瀏覽器的ID,如果他們在記錄,返回0 。如果觀衆沒有登錄,您可以嘗試爲當前用戶是這樣的:

<?php 
$user_id = get_current_user_id(); 
if ($user_id == 0) { 
    echo 'You are currently not logged in.'; 
} else { 
    echo 'You are logged in as user '.$user_id; 
} 
?> 

OR

您也可以嘗試current user object (WP_User)。檢索當前用戶對象(WP_User)。

$current_user = wp_get_current_user(); 
    /** 
    * @example Safe usage: $current_user = wp_get_current_user(); 
    * if (!($current_user instanceof WP_User)) 
    *  return; 
    */ 
    echo 'Username: ' . $current_user->user_login . '<br />'; 
    echo 'User email: ' . $current_user->user_email . '<br />'; 
    echo 'User first name: ' . $current_user->user_firstname . '<br />'; 
    echo 'User last name: ' . $current_user->user_lastname . '<br />'; 
    echo 'User display name: ' . $current_user->display_name . '<br />'; 
    echo 'User ID: ' . $current_user->ID . '<br />'; 

<?php wp_get_current_user(); ?> 
+0

嗨 - 不起作用。我之前嘗試過!它顯示了當前登錄用戶的ID,而不是他們的forntend author.php視圖中的reigstered用戶的ID!再次 - 我只會在前端顯示用戶ID - 任何人都應該看到該ID,無論是否登錄。每個用戶都有自己的作者網址,例如:xxxxxx.com/user/anyuser,並且在本網站中,我將回顯「anyuser」的ID,例如? – NewUser

相關問題