我有个密码。它工作得很好,但并不完美:每个站点都有“节点”类别,但不显示按最新日期排序的帖子,而只是按顺序显示(博客1: 3按日期发布,博客2: 3按日期发布订单,博客3: 3按日期顺序发布,等等)。我想把一切都展示出来。
网站:黄色来自博客2-3。

代码
$blog_ids = array( 1, 2, 3, );
foreach( $blog_ids as $id ) {
switch_to_blog( $id );
$args = array(
'category_name' => 'noticias',
'post_status' => 'publish',
'orderby' => 'publish_date',
'order' => 'DESC',
'posts_per_page' => '4',
);
$query = new WP_Query( $args );
if( $query->have_posts() ) :
while( $query->have_posts()) : $query->the_post() ;
?>
ID); ?>
name); ?>
Ver más
keyboard_arrow_right我希望你能帮助我,问候!
发布于 2021-04-13 15:24:31
The解决方案(带有模板部件):
$blogs = array( 1,4,5 );
$all_posts = array();
foreach( $blogs as $blog ) {
switch_to_blog( $blog );
$args = array( 'category_name' => 'noticias', 'posts_per_page' => 2, 'orderby' => 'publish_date', 'order' => 'DESC');
$blog_posts = get_posts( $args );
foreach( $blog_posts as $blog_post ) {
// Correct permalink, blogname, blog url and post thumnail (with size)
$blog_post->permalink = get_the_permalink( $blog_post->ID );
$blog_post->blogname = get_bloginfo( $blog_post->ID, 'name' );
$blog_post->blogurl = get_site_url($blog_post->ID);
$blog_post->post_thumbnail_url = get_the_post_thumbnail_url($blog_post->ID, 'noticia-archivo');
$all_posts[] = $blog_post;
}
restore_current_blog();
}
usort( $all_posts, '__sort_by_date' );
// Display all posts
foreach( $all_posts as $post ) {
setup_postdata( $post );
// Template part
get_template_part( 'template-parts/card-1' );
}
function __sort_by_date( $b, $a ) {
$a_date = strtotime( $a->post_date );
$b_date = strtotime( $b->post_date );
if( $a_date === $b_date ) { return 0; }
if( $a_date > $b_date ) { return 1; }
return -1;
}the模板部分:
post_thumbnail_url).'"'; ?> class="img-fluid" alt="">
blogname; ?>
permalink . '">' ); echo( 'Ver máskeyboard_arrow_right' ); ?>https://wordpress.stackexchange.com/questions/377878
复制相似问题