我正在尝试在我的博客上获取最新帖子。这些显示在我网站首页的一个小部件中。不过我遇到了一点麻烦。帖子正在成倍增加。http://goo.gl/Q2STSC,这是我的SQL查询。
$posts = DB::connection('blog')->select("
SELECT a.post_title AS title, a.post_name AS slug, meta_value AS thumbnail,a.post_content AS contenido, a.post_date AS fecha
FROM wp_postmeta, wp_posts AS a
JOIN wp_posts AS b ON a.ID = b.post_parent
WHERE b.ID = wp_postmeta.post_id
AND meta_key = '_wp_attached_file' AND a.post_status = 'publish'
ORDER BY fecha
LIMIT 0 , 6");
试试这个
<?php $args = array(
'posts_per_page' => 6,
'offset' => 0,
'orderby' => 'date',
'order' => 'DESC',
'post_type' => 'post',
'post_status' => 'publish'
);
$posts_array = get_posts( $args );
foreach ( $posts_arrayas $post ) : setup_postdata( $post ); ?>
<li>
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
</li>
<?php endforeach;?>
请使用上面的代码从您的博客中获取最新文章。在上面的代码中,您可以看到不同的参数
posts_per_page : 要获取
的帖子数偏移量:开始帖子编号,就像您在自定义查询限制中所做的那样 0[偏移量],6[posts_per_page]
订单 : 订购 [ DESC/ASC]
排序者 : 日期 [ 订单子句必须执行的列]
post_type : 帖子 ( 帖子类型] (如果您想获取自定义帖子(如新闻)的帖子,那么您可以将新闻作为post_type
传递post_status : 发布 ( 帖子状态 )
同样在foreach中,您可以永久链接[帖子的链接]和the_title(帖子标题)
有关更多详细信息,您可以查看此处 https://codex.wordpress.org/Function_Reference/get_posts