Как создать страницу "Отзывы" с отображением отзывов клиентов в WordPress?
// Код для вывода отзывов на странице "Отзывы"
$args = array(
'post_type' => 'reviews', // Имя типа записи "Отзывы"
'posts_per_page' => -1, // Вывести все отзывы
'meta_key' => 'rating', // Поле с оценкой клиента
'orderby' => 'meta_value_num', // Сортировка по числовому значению оценки
'order' => 'DESC' // Сортировка по убыванию
);
$reviews_query = new WP_Query($args);
if ($reviews_query->have_posts()) {
while ($reviews_query->have_posts()) {
$reviews_query->the_post();
echo '' . get_field('client_name') . ': ' . get_field('review_text') . ' (Оценка: ' . get_field('rating') . ')
';
}
wp_reset_postdata();
}
Ответы:
Чтобы отобразить отзывы на странице "Отзывы" в виде списка, вам необходимо использовать кастомный тип записи "Отзывы" и создать соответствующие поля для имени клиента, текста отзыва и оценки клиента.
В приведенном ниже коде используется функция WP_Query для получения всех отзывов и их сортировки по оценке. Затем мы проходимся по каждому отзыву и выводим его имя, текст и оценку.
// Код для вывода отзывов на странице "Отзывы"
$args = array(
'post_type' => 'reviews', // Имя типа записи "Отзывы"
'posts_per_page' => -1, // Вывести все отзывы
'meta_key' => 'rating', // Поле с оценкой клиента
'orderby' => 'meta_value_num', // Сортировка по числовому значению оценки
'order' => 'DESC' // Сортировка по убыванию
);
$reviews_query = new WP_Query($args);
if ($reviews_query->have_posts()) {
while ($reviews_query->have_posts()) {
$reviews_query->the_post();
echo '' . get_field('client_name') . ': ' . get_field('review_text') . ' (Оценка: ' . get_field('rating') . ')
';
}
wp_reset_postdata();
}
Вы можете разместить этот код в файле шаблона страницы "Отзывы" или в любом другом месте, где вы хотите отобразить отзывы. Замените `'reviews'` на свое имя кастомного типа записи, а `'client_name'`, `'review_text'` и `'rating'` на поля, которые вы создали для отзывов.
Удачи!