通过元键和元值获取相邻的帖子

时间:2014-10-20 20:04:53

标签: php wordpress function navigation custom-fields

我正在尝试将上一个/下一个导航限制为在某个meta_key上具有相同meta_value的帖子。我知道之前有人问过,但我找不到合适的答案。而我自己想出的就是:

$keyword = get_post_meta($post->ID, 'keyword', true);
$prevPost = get_previous_post(); 
$args = array('meta_key' => 'keyword', 'meta_value' => $keyword, 'posts_per_page' => 1, 'include' => $prevPost->ID); 
$prevPost = get_posts($args); foreach ($prevPost as $post) {
setup_postdata($post); 
[...]
wp_reset_postdata(); 
}

...但似乎只有当两个帖子按时间顺序相邻时才会起作用,否则它什么都不会显示。我认为函数应该以不同的顺序运行,但我不知道如何去做。

1 个答案:

答案 0 :(得分:0)

插件“Ambrosite Next / Previous Post Link Plus” https://wordpress.org/plugins/ambrosite-nextprevious-post-link-plus/ ..似乎做得很好

为了进一步设置结果样式,人们甚至可以像这样使用它

$prev = previous_post_link_plus( array('return' => 'id') );
query_posts('p='.$prev); while (have_posts()) : the_post();
[...your stuff here...]
endwhile; wp_reset_query();
$next = next_post_link_plus( array('return' => 'id') );
query_posts('p='.$next); while (have_posts()) : the_post();
[...your stuff here...]
endwhile; wp_reset_query();