WordPress插件 - 计算帖子

时间:2018-04-23 22:46:59

标签: wordpress

我的代码工作正常,但我不小心删了一些东西,但我不记得是什么了。此时我的插件只显示一个,最后一个用户。在一切正常之前,插件可以显示所有用户。你有什么想法?提前致谢

function my_count_posts_by_user(){

    global $wpdb; 
    $result = count_users();
    $total_users = $result['total_users'];

    for($id = 1;$id<=$total_users;$id++){

   $result = $wpdb->get_results("SELECT wp_users.ID, wp_users.display_name, COUNT(wp_posts.post_author) AS 'Number_of_posts' FROM wp_users INNER JOIN wp_posts ON wp_users.ID = wp_posts.post_author WHERE  wp_posts.post_type = 'post'  AND wp_users.ID = $id AND wp_posts.post_status = 'publish'" , ARRAY_A);
}

echo '<table>';
foreach ($result as $x){
    echo'<tr>'; 

    echo'<td>'.'ID: '. $x['ID']."</td>";
    echo'<td>'.'User : '. $x['display_name'].'</td>';
    echo'<td>'.'Number of posts :'. $x['Number_of_posts'].'</td>';
    echo'</tr>';

}

echo '</table>';
echo '<br>';

2 个答案:

答案 0 :(得分:0)

我认为您应该使用WP API函数,它将为您完成所有工作。

  • get_users()函数将获取所有用户数据,只需定义您需要的字段。
  • get_user_meta()函数将获取用户元数据。

一个小例子

 $users = get_users( array( 'fields' => array( 'ID' ) ) );
 foreach( $users as $user_id ) {
     print_r( get_user_meta( $user_id->ID ) );
 }

答案 1 :(得分:0)

试试这段代码:

 <a href = "clue_links/facebook.html"><img id = "facebook_icon" src =
 "facebook_icon.png" height = "40" width = "40"></a>