Страница WordPress Custom Post AJAX - Создание нового объекта - PullRequest
0 голосов
/ 27 декабря 2018

Я хочу динамически загружать 6 пользовательских типов записей, отсортированных по таксономии в Wordpress.В настоящее время я могу загрузить все, но я надеюсь разбить посты на наборы по 6 и загрузить каждый с помощью кнопки AJAX load more.

Используя 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;
 }

}

Проблема в том, что нет способа загрузить «страницы», это просто выводит весь контент.Я надеялся создать новый массив или объект и вставить имя сообщения, термин и выдержку в новый массив, а затем использовать событие щелчка, чтобы перебрать новый массив и вывести каждый набор из 6. I Например, есликатегория «фрукты», текущие результаты:

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.У кого-нибудь есть какие-либо идеи?Спасибо за ваше время.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...