如何获取用户的最新页面(不是帖子)并显示内容

时间:2014-07-11 作者:Gregory

我一直在尝试按作者ID获取最新页面,而不是帖子,并将其显示在页面上。

它必须是一个页面而不是一篇文章的原因是用户只能发布一个页面和一大堆文章。

这也需要根据当前登录的用户动态完成。

我有以下代码:

<?php
$user_id = get_current_user_id();
echo $user_id;
$args = array(
    \'post_type\' => \'page\',
    \'post_status\' => \'published\',
    \'posts_per_page\' => 1,
    \'author\' => $user_id
);
$my_posts = get_posts( $args );

foreach ( $my_posts as $post ) : setup_postdata( $post ); ?>    
        <?php the_title(); ?>
<?php endforeach; ?>
这只需返回当前页面的标题(使用\\u title()测试);将替换为_content();一旦开始工作)。我四处寻找解决方案,但找不到任何解决方案。

我很乐意帮忙。

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

我创建了一个新的自定义帖子类型,而不是使用页面。应该早点想到这一点:

<?php
$user_id = get_current_user_id();
$args = array( 
    \'post_type\' => \'user-review\', 
    \'posts_per_page\' => 1, 
    \'author\' => $user_id );
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post();
    echo \'<div style="width:885px;height:auto;">\';
    the_content();
    echo \'</div>\';
endwhile; 
?>

SO网友:Romain

您需要使用WP\\u查询。get\\u posts只会让您发布=)

<?php 
$user_id = get_current_user_id();
echo $user_id;
        $args=array(
            \'post_type\' => \'page\',
            \'post_status\' => \'published\',
            \'posts_per_page\' => 1,
            \'author\' => $user_id
        );                       
        $wp_query = new WP_Query($args);
        while ( have_posts() ) : the_post(); 
            the_title(); 
        endwhile; 
        ?>
经过测试,正在运行

结束