个性化阅读
专注于IT技术分析

WordPress WP_Query结果数组

我正在尝试使我的wordpress主页仅显示2个博客文章。与不同的显示元素。其中之一是向左浮动, 而另一个是向右浮动。在本地php上, 很容易以数组形式获取结果。并用$ result [0]和$ result [1]打印它们。

但是在wordpress idk上可以做到这一点。也许你们可以帮助我指导任何文档。像wp_query等等, 别忘了给我示例代码行

*对不起, 我的英语太差了。希望大家阅读并回复。

我当前的代码行是:

$blogposts = new WP_Query(array(
        'post_type' => 'post', 'posts_per_page' => 2, ));
while ($blogposts->have_posts()) {
        $blogposts->the_post();

}

#1


如果你对数组比较满意, 则可以始终使用get_posts()函数代替, 该函数几乎(完全)像WP_Query()类一样接受参数。 get_posts()实际上也使用了WP_Query。

就是说, 你提到的使用”原生PHP”进行修改的代码不会那么困难。这只是一个while循环, 而不是foreach循环, 两者都是相似的控制结构。

你要做的就是添加一个计数器变量, 并在每次通过之后使用增量运算符将其递增:++;

这是为你提供的快速代码示例:

$args = array(
    'posts_per_page' => 2, );

$query = new WP_Query( $args );

if( $query->have_posts() ){
    $count = 0; // Start a Counter

    while( $query->have_posts() ){
        $query->the_post();

        printf( '<div class="post float-%s">', ($count++ % 2 == 0) ? 'left' : 'right' ); // If counter is odd: "left", even: "right"
            printf( '<h4 class="post-title">%s</h4>', get_the_title() );
            the_content();
        echo '</div>';
    }
} else {
    echo 'No Posts Found.';
}

有两件事:

  • 我将$ args数组移至其自己的变量。一些查询可能变得非常复杂, 将它们作为指定变量可以提高长期可维护性。
  • 如果只想发布, 则也不需要post_type参数, 因为这是默认值。
  • 我添加了一个if子句, 因此, 如果你的帖子消失了或者你移动了这段代码, 那么”找不到任何东西”就会退一步。
  • 我在后期课程中使用了一些复杂的三元运算符。我在那里增加它, 因此以后我们不需要另一行来增加$ count, 并且不需要多行” if / else”来确定左或右。
  • 除此之外, 你没有提供标记结构, 因此如果你不知道它们之间的区别, 则可以使用the_和get_the_函数。
赞(0)
未经允许不得转载:srcmini » WordPress WP_Query结果数组

评论 抢沙发

评论前必须登录!