如何列出所有WordPress用户、他们的电子邮件地址、帖子标题和帖子状态?

时间:2011-04-14 作者:Carson

我正在寻找一种返回类似以下内容的方法:

用户、电子邮件、帖子标题、帖子状态重复我网站上的每个用户只有一篇帖子。这是一种称为公司列表的自定义帖子类型。

1 个回复
最合适的回答,由SO网友:Bainternet 整理而成

您可以通过一个简单的循环来实现这一点,假设用户也是文章的作者,创建一个模板页面,然后复制页面的内部。php到它。

然后用以下代码替换回路部件:

<?php
$args = array(
    \'post_type\' => \'company-listing\', //change this to your actual CPT name
    \'posts_per_page\' => -1, //-1 to get all or any number you want to use with pagination
);
query_posts($args);
if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
User, email, post title, post status
    <div class="post company-listing">
    <ul>
<?php  $user_info = get_userdata($post->post_author); ?>
        <li class="user">
            <?php echo $user_info->user_nicename; ?>
        </li>
        <li class="email">
            <?php echo $user_info->user_email; ?>
        </li>
        <li class="title">
            <a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a>
        </li>
        <li class="status">
            <?php echo $post->post_status; ?>
        </li>
    </ul>
</div>
<div style="clear:both"></div>

<?php endwhile; ?>

    <?php else: ?>

        <p class="no-data">
            <?php _e(\'Sorry, no page matched your criteria.\'); ?>
        </p><!-- .no-data -->
 <?php endif; ?>
并添加以下小代码css以正确设置样式:

<style type="text/css">
company-listing ul li{ float: left;padding: 2px;}
</style>
现在您没有指定什么是“USER”,所以我只是向您展示了如何使用USER\\u nicename,但在这一行之后$user_info = get_userdata($post->post_author); 您可以将$user\\u info用于:

  • 用户名
  • 用户名
  • ID
  • 用户登录
  • 用户通行证
  • 用户昵称
  • 用户电子邮件
  • 用户url
  • 用户注册
  • 显示名称
    • 等。

      至于状态,我假设您正在谈论post\\u状态,因此您需要添加\'post_status\' => array(\'publish\',\'pending\',\'draft\',\'future\',\'private\',....) 到您的$args。

      如果你说的是一个自定义字段,那么只需使用get_post_meta($post->ID,\'status_field_name\',true);

      希望这有帮助

结束

相关推荐