我有一个循环问题,我试图将其放入自定义页面模板中。我想显示带有条件的帖子,但无论我在WP\\u查询参数中输入什么,都没有考虑。
以下是我的所有模板代码:
<?php
/*
Template Name: Trends
*/
get_header(); ?>
<section id="top">
<?php the_post(); ?>
<div class="intro"><?= get_the_title(); ?></div>
<?php the_content();?>
<?php
$args = array(
\'posts_per_page\' => 2
);
$latest = new WP_Query( $args ); ?>
<?php while( $latest->have_posts() ) : $latest->the_post(); ?>
<h2><?php the_title(); ?></h2>
<?php endwhile; wp_reset_postdata(); ?>
</section>
<?php get_footer(); ?>
这段代码提供了我所有的帖子,而不仅仅是我在args上询问的2篇。但不管我放什么,它总是给我默认的循环。。。
我什么都试过了,还是不明白。
谢谢你的帮助!
**EDIT **
此代码适用于:
$query = new WP_Query(array(
\'p\' => 42
));
但这一个没有:
$query = new WP_Query(array(
\'post__in\' => $post_ids,
\'post_status\' => \'publish\',
\'ignore_sticky_posts\' => false,
\'orderby\' => \'post__in\',
\'posts_per_page\' => 2
));
无论我在数组中放置什么,即使它是
p
参数第二个
$query
显示所有我的帖子。
SO网友:Andy Macaulay-Brook
由于我们的帮助尝试似乎不起作用,我采用了您的代码,正如当前的问题所示:
<?php
/*
Template Name: Trends
*/
get_header(); ?>
<section id="top">
<?php the_post(); ?>
<div class="intro"><?= get_the_title(); ?></div>
<?php the_content();?>
<?php
$args = array(
\'posts_per_page\' => 2
);
$latest = new WP_Query( $args ); ?>
<?php while( $latest->have_posts() ) : $latest->the_post(); ?>
<h2><?php the_title(); ?></h2>
<?php endwhile; wp_reset_postdata(); ?>
</section>
<?php get_footer(); ?>
我将该模板放入新安装的WP中,并将该模板分配给一个页面。我写了四篇文章,分别是第一篇、第二篇、第三篇和第四篇。
当我查看页面时,我看到帖子4和帖子3按顺序列出。其中2个。
因此,目前问题的答案是,您的代码正在运行。