gpt4 book ai didi

wordpress - WP_Query 按 "rand"和 "name"排序?

转载 作者:行者123 更新时间:2023-12-02 11:26:20 27 4
gpt4 key购买 nike

我正在使用 Wordpress,对于我主页上的帖子,我希望它们能够随机排序并按名称排序。我的意思是,我想每次在我的主页上显示不同的帖子,但按它们的名字排序。我从主题文件中更改了 WP_Query 参数,如下所示,但它不起作用。由于我无法理解的原因,我得到了不相关的结果。

#setup wp_query
$args = array(
'posts_per_page' => $postsperpage,
'orderby' => array( 'rand', 'title' ),
'order' => 'DESC',
);

有什么办法可以实现这一点吗?

附:老实说,我讨厌那些不相关地否决这些问题的人。如果我在互联网上找到解决方案,我就不会问这个问题。如果您有合理的理由,请警告我或编辑我的帖子,而不是盲目地否决它。

最佳答案

As documented:

orderby (string | array) - Sort retrieved posts by parameter. Defaults to 'date (post_date)'. One or more options can be passed.

所以:

$args = array(
'orderby' => array( 'rand', 'name' ),
'order' => 'DESC',
);

但我认为这不会给你带来你想要的结果。您很可能只需使用 randposts_per_page 设置即可获得所需的帖子数量。获取所有帖子并随后按名称对它们进行排序。

示例:

$args = array(
'orderby' => 'rand',
);
// get X random posts (10 by default)
$result = new WP_query( $args );

// sort these posts by post_title
usort( $result->posts, function($a, $b) {
if ( $a->post_title == $b->post_title )
return 0;
return ($a->post_title < $b->post_title) ? -1 : 1;
} );

// Start the loop with posts from the result.
while ( $result->have_posts() ) : $result->the_post();
// do your stuff in the loop
}

关于wordpress - WP_Query 按 "rand"和 "name"排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39265440/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com