Вопрос или проблема
Как я могу отобразить несколько постов и содержимое постов на одном URL.
Например, https://www.recruitment.guru/ssc/ssc-recruitment/
показывает посты на одной странице поста.
Пожалуйста, предложите решение.
Сначала вам нужно создать пользовательский шаблон страницы и скопировать стили из вашего файла page.php. После этого вы используете цикл ниже, чтобы отобразить все посты на одной странице.###
<?php
// запрос
$wpb_all_query = new WP_Query(array('post_type'=>'post', 'post_status'=>'publish', 'posts_per_page'=>-1)); ?>
<?php if ( $wpb_all_query->have_posts() ) : ?>
<ul>
<!-- цикл -->
<?php while ( $wpb_all_query->have_posts() ) : $wpb_all_query->the_post(); ?>
<li><a href="https://wordpress.stackexchange.com/questions/285947/<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endwhile; ?>
<!-- конец цикла -->
</ul>
<?php wp_reset_postdata(); ?>
<?php else : ?>
<p><?php _e( 'Извините, не найдено постов, соответствующих вашим критериям.' ); ?></p>
<?php endif; ?>
Ответ или решение
Чтобы отобразить несколько публикаций и их содержимое на одной URL-странице в WordPress, можно использовать настраиваемый шаблон страницы и специальный код для выборки и отображения всех необходимых сообщений. Рассмотрим этот процесс подробнее, включая шаги для настройки и некоторые рекомендации по SEO.
Шаг 1: Создание пользовательского шаблона страницы
-
Создание файла шаблона: В папке вашей темы создайте новый файл, например,
custom-posts.php
. -
Добавление заголовка шаблона: Поскольку это пользовательский шаблон, добавьте следующий код в начало файла:
<?php /* Template Name: Показ всех постов */ ?>
-
Копирование стилей: Скопируйте необходимые стили из вашего
page.php
, чтобы элементы страницы отображались корректно.
Шаг 2: Использование WP_Query для выборки постов
Теперь вам нужно добавить код, который будет извлекать и отображать все публикации. Используйте следующий код в вашем файле шаблона:
<?php
// Запрос для извлечения всех опубликованных постов
$wpb_all_query = new WP_Query(array(
'post_type' => 'post',
'post_status' => 'publish',
'posts_per_page' => -1 // -1 для получения всех постов
));
?>
<?php if ($wpb_all_query->have_posts()) : ?>
<ul>
<!-- Начало цикла -->
<?php while ($wpb_all_query->have_posts()) : $wpb_all_query->the_post(); ?>
<li>
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
<div><?php the_excerpt(); ?></div> <!-- Отображение краткого содержания поста -->
</li>
<?php endwhile; ?>
<!-- Конец цикла -->
</ul>
<?php wp_reset_postdata(); ?>
<?php else : ?>
<p><?php _e('Извините, посты не найдены.'); ?></p>
<?php endif; ?>
Шаг 3: Внедрение шаблона на страницу
- Создание страницы в WordPress: Перейдите в админку WordPress и создайте новую страницу.
- Выбор шаблона: В разделе «Атрибуты страницы» выберите ваш новый шаблон "Показ всех постов".
- Публикация страницы: Опубликуйте страницу, и теперь все ваши посты будут доступны по одной URL.
SEO-оптимизация
Чтобы оптимизировать вашу новую страницу для поисковых систем, рассмотрите следующие рекомендации:
-
Создайте уникальное и привлекательное название страницы. Название должно отражать содержимое и быть релевантным ключевым словам.
-
Используйте мета-теги. Убедитесь, что у вас есть мета-теги для описания контента страницы, поскольку это поможет в поисковой выдаче.
-
Интерактивные элементы: Рассмотрите возможность добавления фильтров или поиска для пользователей, чтобы они могли легче находить интересующие их посты.
-
Оптимизация изображений: Все изображения, используемые в постах, должны быть оптимизированы для веба. Используйте атрибуты alt для изображения, чтобы повысить их доступность и индексируемость.
Заключение
Используя данный подход, вы сможете эффективно отображать все посты на одной странице в WordPress, создавая при этом удобный интерфейс для пользователей и улучшая SEO. Такой метод поможет установить упрощённый доступ к контенту и улучшит взаимодействие пользователей с вашим сайтом.