如何显示在当前帖子之后发布的最后5篇帖子?
下图说明:
global $wpdb, $post; // Uses current POST here
$IDs = $wpdb->get_col("SELECT `ID` FROM {$wpdb->posts}
WHERE `post_type`=\'{$post->post_type}\' AND `post_status`=\'publish\' AND `ID`<{$post->ID}
ORDER BY `ID` DESC LIMIT 5;");
此函数列出ID低于的5个帖子ID 176
属于post_type=\'post\'
和post_status=\'publish\'
. 如果您使用自定义的post类型,请更改post\\U类型,以满足您的需要。您也可以通过以下方式订购post_date_gmt
如果你愿意的话。当做
<?php
function custom_prev_posts($limit = 5){
global $wpdb, $post;
$html = \'\';
$prev_posts = $wpdb->get_results( $wpdb->prepare( "SELECT * FROM $wpdb->posts WHERE $wpdb->posts.post_date < \'%s\' AND $wpdb->posts.post_type = \'post\' AND $wpdb->posts.post_status = \'publish\' ORDER BY $wpdb->posts.post_date DESC LIMIT $limit", $post->post_date ) );
if($prev_posts){
$html .= \'<ul>\';
foreach ( $prev_posts as $prev_post ) {
$html .= \'<li><a href="\' . get_permalink( $prev_post->ID ) . \'">\' .$prev_post->post_title . \'</a></li>\';
}
$html .= \'</ul>\';
}
return $html;
}
echo custom_prev_posts(); ?>
我认为使用offset arg可以实现您的目标:
$posts_arr = get_posts(\'numberposts=5&offset=1\');
我有一个页面,列出了当前页面的所有子页面。每个页面都在wordpress编辑器中分配了一个订单号,但由于某种原因,它们没有排序。我是这样安排的:产品-第1页-第2页-第3页-第4页-第5页我的query\\u帖子如下所示:query_posts(\'post_type=page&order=ASC&orderby=\'.$post->menu_order.\'&post_parent=\'.$post->ID); 但输出结果如下:1,3,2,5,4如何使用内置