WordPress: Как добавить записи на страницу — полное руководство

Краткое описание WordPress и его структуры контента

WordPress оперирует двумя основными типами контента: записями (posts) и страницами (pages). Записи обычно используются для динамического контента, такого как новости, статьи блога, и упорядочены по дате публикации. Страницы предназначены для статического контента – «О нас», «Контакты», «Услуги».

Зачем нужно добавлять записи на отдельные страницы? (Примеры использования)

По умолчанию, основной цикл WordPress выводит записи на архивных страницах (главная блога, категории, теги). Однако часто возникает необходимость встроить подборку записей в статическую страницу. Примеры:

Тематические подборки: Вывод статей определенной категории на странице, посвященной конкретной услуге.

Портфолио: Отображение кастомных типов записей (проектов) на странице «Портфолио».

Новости компании: Вставка блока последних новостей на главную страницу сайта.

Релевантный контент: Добавление списка похожих статей в конце основной статьи (хотя чаще это делается в шаблоне single.php).

Обзор различных способов добавления записей на страницы

Существует несколько подходов к решению этой задачи, различающихся по сложности и гибкости:

Встроенные инструменты: Использование блоков редактора Gutenberg или шорткодов (предоставляемых темами/плагинами).

Специализированные плагины: Установка плагинов, предлагающих готовые решения с настройками.

Пользовательские шаблоны страниц: Создание PHP-шаблонов для максимального контроля над запросом и отображением.

Рассмотрим каждый из этих методов подробнее.

Способ 1: Использование встроенного редактора WordPress (Gutenberg)

Современный редактор блоков Gutenberg предлагает встроенные инструменты для вывода записей без необходимости написания кода или установки сторонних плагинов.

Использование блока «Последние записи»

Наиболее простой способ – использовать блок "Последние записи" (Latest Posts).

Откройте редактор страницы, на которую нужно добавить записи.

Нажмите "+" для добавления нового блока и найдите "Последние записи".

Вставьте блок на страницу.

Фильтрация и настройка блока

Панель настроек блока (справа) позволяет гибко управлять выводом:

Параметры сортировки: Порядок (Новые к старым, Старые к новым, А-Я, Я-А).

Настройки отображения:

Показывать имя автора.

Показывать дату публикации.

Показывать избранное изображение (с настройкой размера и выравнивания).

Показывать отрывок (с ограничением по количеству слов).

Показывать кнопку "Читать далее".

Фильтры записей:

Категории: Выберите одну или несколько категорий.

Авторы: Укажите конкретных авторов.

Количество элементов: Задайте число отображаемых записей.

Столбцы: Разместите записи в несколько колонок.

Шорткоды (Shortcodes)

Некоторые темы и плагины предоставляют собственные шорткоды для вывода записей. Синтаксис обычно выглядит так: [custom_posts category="news" count="5" order="DESC"]. Использование шорткодов актуально, если вы работаете с классическим редактором или если функциональности блока "Последние записи" недостаточно.

Преимущества и недостатки данного метода

Преимущества: Простота использования, визуальная настройка, не требует дополнительных плагинов (для блока Gutenberg), интеграция с интерфейсом WordPress.

Недостатки: Ограниченная гибкость по сравнению с кодом или специализированными плагинами, возможности кастомизации внешнего вида зависят от темы, фильтрация по тегам или кастомным полям в стандартном блоке отсутствует.

Способ 2: Использование плагинов для отображения записей

Плагины предлагают более мощные и гибкие решения для вывода записей на страницах.

Обзор популярных плагинов

Display Posts: Очень популярный плагин, использующий шорткоды с множеством параметров для тонкой настройки запроса и вывода. Легковесный и гибкий.

Content Views – Post Grid & Filter: Позволяет создавать красивые сетки и списки записей с возможностью фронтенд-фильтрации.

WP Show Posts (приобретен GeneratePress, теперь часть GenerateBlocks): Мощный инструмент для создания списков записей с упором на производительность.

Пошаговая инструкция по установке и настройке плагина Display Posts

Установка: Перейдите в Плагины > Добавить новый, найдите Display Posts, установите и активируйте.

Использование: Плагин работает через шорткод [display-posts]. Вставьте его в текстовый блок или блок шорткода на нужной странице.

Настройка параметров: Модифицируйте шорткод, добавляя параметры. Примеры:

Вывод 5 записей из категории ‘news’: [display-posts category="news" posts_per_page="5"]

Вывод 3 записей с тегом ‘featured’, упорядоченных по заголовку: [display-posts tag="featured" posts_per_page="3" orderby="title" order="ASC"]

Вывод записей определенного автора с миниатюрами и отрывком: [display-posts author="имя_автора" posts_per_page="10" image_size="thumbnail" include_excerpt="true"]

Полный список параметров доступен в документации плагина.

Настройка внешнего вида отображаемых записей (шаблоны, стили)

Плагин Display Posts по умолчанию выводит простой список заголовков. Для кастомизации:

Параметры шорткода: Используйте параметры вроде image_size, include_date, include_excerpt.

CSS: Добавьте собственные CSS-стили для классов .display-posts-listing, .listing-item и других, генерируемых плагином.

Шаблоны (Продвинутый уровень): Для полной кастомизации HTML-структуры можно переопределить шаблоны плагина в вашей теме (требует знания PHP и структуры плагина).

Реклама

Расширенные возможности плагинов

Многие плагины предлагают дополнительные функции:

Пагинация: [display-posts posts_per_page="10" pagination="true"]

Карусели / Слайдеры: Часто реализуются через интеграцию с другими плагинами или как встроенная опция.

Сложные фильтры: Фильтрация по кастомным полям (meta query), таксономиям.

Поддержка Custom Post Types: Отображение не только стандартных записей, но и пользовательских типов контента.

Способ 3: Создание пользовательских шаблонов страниц (для продвинутых пользователей)

Этот метод предоставляет максимальный контроль над запросом к базе данных и HTML-разметкой выводимых записей. Требует знаний PHP, HTML, CSS и WordPress Theme API.

Основы работы с PHP и шаблонами WordPress

WordPress использует иерархию шаблонов для отображения контента. Чтобы создать уникальный макет для определенной страницы, можно создать файл шаблона страницы.

Создайте PHP-файл в папке вашей активной темы (например, template-custom-posts.php).

Добавьте в начало файла следующий заголовок:

В административной панели WordPress, при редактировании нужной страницы, выберите этот шаблон в разделе "Атрибуты страницы" -> "Шаблон".

Создание нового шаблона страницы с кодом для вывода записей

В файле шаблона (template-custom-posts.php) после get_header(); добавьте основной контент страницы и цикл для вывода записей.



Последние новости

Использование WP_Query для гибкой настройки вывода записей

Класс WP_Query позволяет создавать кастомные запросы к базе данных WordPress. Вставьте следующий код в секцию <?php // Код WP_Query будет здесь ?>:

 'post',          // Тип записи (post, page, custom_post_type)
    'post_status'    => 'publish',       // Статус записи
    'posts_per_page' => 5,               // Количество записей на странице (-1 для всех)
    'category_name'  => 'news',          // Ярлык категории (или 'category__in' => [id1, id2])
    // 'tag'            => 'featured',      // Ярлык тега
    'orderby'        => 'date',          // Поле для сортировки (date, title, rand, ...)
    'order'          => 'DESC',          // Направление сортировки (DESC, ASC)
    // 'meta_query'     => [                 // Запросы по кастомным полям
    //     [
    //         'key'     => 'custom_field_key',
    //         'value'   => 'some_value',
    //         'compare' => '=',
    //     ],
    // ],
];

/**
 * Создание нового экземпляра WP_Query.
 *
 * @var WP_Query $custom_query
 */
$custom_query = new WP_Query($args);

// Проверка, есть ли записи, соответствующие запросу
if ($custom_query->have_posts()) :
    echo '
    '; // Стандартный цикл WordPress для вывода найденных записей while ($custom_query->have_posts()) : $custom_query->the_post(); ?> <li id="post-" >
    <a href="">

    <a href="">

    <?php endwhile; echo '
'; // Пагинация (если нужна) // the_posts_pagination(...); // Настройте под $custom_query // Важно: Сброс данных запроса для предотвращения конфликтов wp_reset_postdata(); else : // Если записи не найдены echo '

Записи не найдены.

'; endif; ?>

Добавление CSS стилей для оформления пользовательского шаблона

Добавьте необходимые стили в файл style.css вашей темы или через кастомайзер WordPress (Внешний вид > Настроить > Дополнительные стили), используя классы, указанные в шаблоне (.custom-posts-section, .custom-posts-list, .custom-list-item и т.д.).

Рекомендации и лучшие практики

Оптимизация производительности страницы с большим количеством записей

Кеширование: Используйте плагины кеширования (W3 Total Cache, WP Super Cache) для снижения нагрузки на сервер.

Ограничение запроса: Запрашивайте только необходимые поля с помощью WP_Query (параметр 'fields' => 'ids' или 'fields' => 'id=>parent').

Пагинация: Не выводите сотни записей на одной странице, используйте пагинацию.

Оптимизация изображений: Убедитесь, что миниатюры имеют правильные размеры и оптимизированы.

Отложенная загрузка (Lazy Loading): Применяйте для изображений и, возможно, для самого блока записей.

Адаптивный дизайн: как обеспечить корректное отображение на разных устройствах

Используйте относительные единицы (%, vw) и медиа-запросы в CSS для адаптации сеток и элементов.

Тестируйте отображение на различных разрешениях экрана.

Убедитесь, что изображения масштабируются корректно.

Устранение неполадок: что делать, если записи не отображаются

Проверьте параметры шорткода/блока: Убедитесь в отсутствии опечаток в именах категорий, тегов, параметрах.

Проверьте наличие записей: Удостоверьтесь, что записи с нужными критериями (категория, тег, статус) существуют и опубликованы.

Конфликты плагинов/темы: Временно отключите другие плагины и переключитесь на стандартную тему (Twenty Twenty-Three), чтобы исключить конфликты.

Ошибки PHP (для способа 3): Включите режим отладки WordPress (WP_DEBUG) для выявления ошибок в кастомном коде.

Правильность имени шаблона (для способа 3): Убедитесь, что шаблон выбран для нужной страницы и файл шаблона имеет корректный заголовок.

Заключение: Какой способ выбрать для добавления записей на страницу WordPress?

Блок "Последние записи" (Gutenberg): Идеален для простых задач, когда достаточно базовых фильтров и стандартного отображения.

Плагины: Лучший выбор для большинства пользователей. Предлагают хороший баланс между простотой настройки и гибкостью. Подходят для создания сложных сеток, списков с расширенной фильтрацией без программирования.

Пользовательские шаблоны страниц: Для разработчиков и опытных пользователей, которым нужен полный контроль над запросом, HTML-структурой и интеграцией с уникальным дизайном темы.

Выбор зависит от ваших технических навыков, требований к функциональности и желаемого уровня кастомизации.


Добавить комментарий