首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >显示多站点合并后的文章,并按最新日期排序

显示多站点合并后的文章,并按最新日期排序
EN

WordPress Development用户
提问于 2020-11-09 13:22:32
回答 1查看 71关注 0票数 0

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

网站:黄色来自博客2-3。

代码

代码语言:javascript
复制
$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

我希望你能帮助我,问候!

EN

回答 1

WordPress Development用户

发布于 2021-04-13 15:24:31

The解决方案(带有模板部件):

代码语言:javascript
复制
$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模板部分:

代码语言:javascript
复制
post_thumbnail_url).'"'; ?> class="img-fluid" alt="">
 blogname; ?> 
        
          
          
          
permalink . '">' ); echo( 'Ver máskeyboard_arrow_right' ); ?>
票数 0
EN
页面原文内容由WordPress Development提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://wordpress.stackexchange.com/questions/377878

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档