WordPress自定义发布AJAX页面-构建新对象

时间:2018-12-26 21:56:04

标签: php ajax wordpress

我想动态加载6种自定义帖子类型,并按Wordpress中的分类法进行排序。我目前可以全部加载,但我希望将帖子分成6组,并使用AJAX加载更多按钮加载每个。

使用AJAX,我可以通过获取“条款”(自定义类别)来加载自定义帖子,并针对每个帖子输出帖子。例如,

     $terms = get_terms('recipe_categories');
 foreach($terms as $term) {

   //Recipes
    $args_recipes = array(
      'post_type' => array( 'recipes' ),
      'order'   => $_POST['date'], // ASC or DESC
       'tax_query' => array(
         array(
           'taxonomy' => 'recipe_categories',
           'field' => 'id',
           'terms' => $term->term_id
         )
       )
    );

     $query_sorted = new WP_Query( $args_recipes );

     if( $query_sorted->have_posts() ) :
       while( $query_sorted->have_posts() ): $query_sorted->the_post();

       $post_title = get_the_title($post->ID);
       $img_url = get_the_post_thumbnail_url();

       echo '<div class="recipe_ind-holding">';
       echo '<div class="recipe_ind-img" style="background-image: url(' . $img_url . ')">';
       echo '</div>';
       echo '<div class="recipe_ind-copy">';
         $terms = wp_get_post_terms( $query_sorted->post->ID, array( 'recipe_categories'));
         foreach ( $terms as $term ) {
             echo '<p class="rec_cat">' . $term->name . '</p>';
         }
         echo '<h2>' . $post_title . '</h2>';
         echo '</div>';
         echo '</div>';
       endwhile;
     else :
       echo 'No posts found';
     endif;
 }

}

问题在于无法加载“页面”,这只会输出所有内容。我希望创建一个新的数组或对象,并将帖子名称,术语和摘录推送到新数组中,然后使用click事件遍历新数组并输出每组6个。 例如,如果类别是水果,则当前结果为:

Apple 1
Apple 2
Apple 3
Apple 4


Banana 1
Banana 2
Banana 3
Banana 4


Cranberry 1
Cranberry 2
Cranberry 3
Cranberry 4

I would like to create an object where:

{ set: 1 ,
fruit {[Apple 1, Apple 2, Apple 3, Apple 4, Banana 1, Banana 2]}
 },
{ set: 2 ,
fruit {[Banana 3, Banana 4, Cranberry 1, Cranberry 2, Cranberry 3, 
Cranberry 4]}
}
}

我有这个概念,但是不确定用php的最佳方法。有人有什么想法吗?谢谢您的宝贵时间。

0 个答案:

没有答案