0

我在 Wordpress 中创建了一个循环,条件如下:

  1. 显示特定的帖子格式(例如:视频)

  2. 限制帖子数量。在这种情况下,我只想显示 2 个帖子。

这是我的代码:

 <?php $i = 1; if (have_posts()) : while (have_posts() && $i < 3) : the_post(); ?>
 <?php get_template_part( 'content-video', get_post_format() ); ?>
 <?php $i++; endwhile; ?>
 <?php else : ?>
 <?php get_template_part( 'content', 'none' ); ?>
 <?php endif; ?>

我已经有了文件名 content-video.php。

不幸的是,循环不起作用。仅显示第一个帖子,而不是带有 content-video.php 模板的特定帖子(视频帖子格式)。

感谢任何帮助或替代代码。提前致谢。

4

2 回答 2

0

最好的方法是从查询中获取“视频”帖子格式的帖子,但我不确定如何:)

作为一种解决方法,您可以在循环内执行此操作:

 if (!has_post_format('video'))
   continue;
于 2013-04-16T12:21:34.393 回答
0

我不确定我要在这里写什么,但这只是我对您的代码的评论:

  1. 我认为你的if else while陈述包装不好。如果你的方法是正确的,你最后会错过一个endif

  2. 为什么在代码中使用i变量,因为您可以在 WP 中自定义任何查询,特别是对于使用参数的帖子数posts_per_page

  3. 为什么不使用里面的循环content-video.php 并且只写:get_template_part('content-video', get_post_format());就像在single.php and loop-single.phpwordpress 安装提供的主题中一样(二十个主题)。

如果我错了,请不要投反对票。祝你好运

于 2013-04-16T12:03:02.570 回答