我想用
$ps = "9126,8955,8554,8620,8825,8912,8937,8813,9054,9022";
$recent = new WP_Query( array('post__in' => explode(',', $ps)) );
要按 ID 检索帖子,我会按发布日期排序结果,但我想在此示例中按以下顺序检索相同的 ID:
9126,8955,8554,8620,8825,8912,8937,8813,9054,9022
我想用
$ps = "9126,8955,8554,8620,8825,8912,8937,8813,9054,9022";
$recent = new WP_Query( array('post__in' => explode(',', $ps)) );
要按 ID 检索帖子,我会按发布日期排序结果,但我想在此示例中按以下顺序检索相同的 ID:
9126,8955,8554,8620,8825,8912,8937,8813,9054,9022
就个人而言,如果帖子的顺序以及您的 ID 号要那么严格,我可能会避免使用 WP_Query:
<?php
$ids = array(9126,8955,8554,8620,8825,8912,8937,8813,9054,9022);
foreach($ids as $id)
{
$post = get_post($id);
setup_postdata($post);
?>
<!-- YOUR HTML HERE -->
<?php
}
?>
否则,由于帖子没有像页面那样的菜单顺序选项,您可能必须设置自定义字段并为其赋值(较低的数字优先于较高的数字)。然后你可以做这样的事情:
<?php
$ids = array(9126,8955,8554,8620,8825,8912,8937,8813,9054,9022);
$recent = new WP_Query(array('post__in' => $ids, 'orderby' => 'meta_value_num', 'meta_key' => 'postOrder', 'order' => 'ASC'));
?>
第二个选项未经测试,我不能保证它会立即工作,但它应该让你开始。祝你好运。
将来在 wordpress 3.5 中,您可以使用:'orderby'=>'post__in'