我想获取某个类别中前两篇和后两篇文章的ID,将其显示为“相关视频”播放列表。我知道有一些功能previous_post_link
和next_post_link
, 这将为我做的工作,但我想要的不仅仅是一个前一个和一个下一个链接。
设想以下场景:
我想在Post 001上显示#002和#003。在帖子#003上,我想显示#001、#002、#004和#005。
$post_id = $post->ID; // current post id
$args = array(\'category\' => $mycat, \'numberposts\' => 200);
$posts = get_posts($args);
// get ids of posts retrieved from get_posts
$ids = array();
foreach ($posts as $thepost) {
$ids[] += $thepost->ID;
}
// get and echo previous and next post in the same category
$thisindex = array_search($post->ID, $ids);
$prevvid = $ids[$thisindex-2];
$previd = $ids[$thisindex-1];
$nextid = $ids[$thisindex+1];
$nexttid = $ids[$thisindex+2];
我从
Wordpress Codex.
现在让我担心的是:如果我不在numberposts
, 当然,它只会获取标准数量的帖子,因此我的代码不会按我想要的方式工作。我可能永远不会在一个类别中有超过200个视频。您认为我的解决方案在性能方面是个坏主意吗?我在其他地方没有找到显示相邻帖子的窍门。
提前感谢您的建议!