Закрепленные записи в WordPress — удобный инструмент для выделения важного контента на сайте. Однако иногда возникает необходимость удалить закрепление с одной или нескольких записей, чтобы обновить приоритеты или изменить логику отображения. В этой статье мы подробно разберём, как правильно удалить закреплённые записи с использованием админ-панели, через код и с помощью популярных плагинов.
Что такое закрепленные записи в WordPress и зачем их удалять
Закрепленные записи (sticky posts) — это стандартная функция WordPress, позволяющая «прикрепить» выбранные записи к началу списка постов любой категории или главной страницы. Это полезно для акцентирования внимания на важных новостях, акциях или объявлениях.
Однако с течением времени может возникнуть необходимость убрать закрепление, например, если контент устарел или приоритеты поменялись. Удаление закрепления — это простой процесс, но важно знать, как это сделать корректно, чтобы не нарушить логику вывода записей.
В следующих разделах рассмотрим три основных способа удаления закрепления: через админку, с помощью кода и через плагины.
Удаление закрепления через админ-панель WordPress
Самый простой способ — воспользоваться стандартным интерфейсом WordPress.
Шаги:
- Перейдите в раздел «Записи» > «Все записи».
- Найдите запись, у которой нужно снять закрепление. В списке закрепленные записи выделяются меткой «Закреплено».
- Откройте запись на редактирование.
- В правой боковой панели найдите блок «Документ» и опцию «Закрепить в верхней части блога».
- Снимите галочку с этой опции и сохраните изменения.
После этого запись перестанет быть закрепленной и будет отображаться согласно дате публикации.
Этот способ подходит, если нужно снять закрепление с одной или нескольких записей вручную.
Удаление закрепления через код: фильтры и функции WordPress
Для автоматизации или более гибкого управления закреплением можно использовать PHP-код в файле functions.php вашей темы или в собственном плагине.
Как программно снять закрепление у конкретной записи
Для этого используется функция wp_update_post() с параметром sticky_posts. Однако для массового удаления закреплений лучше применить следующий код:
function wptem_remove_all_sticky_posts() {
$sticky_posts = get_option('sticky_posts');
if (!empty($sticky_posts)) {
update_option('sticky_posts', []);
}
}
// Вызывать функцию при необходимости, например, при инициализации
add_action('init', 'wptem_remove_all_sticky_posts');Этот код полностью очищает список закрепленных записей, тем самым снимая закрепление со всех.
Как снять закрепление у конкретного ID записи
function wptem_unsticky_post_by_id($post_id) {
$sticky_posts = get_option('sticky_posts');
if (($key = array_search($post_id, $sticky_posts)) !== false) {
unset($sticky_posts[$key]);
update_option('sticky_posts', $sticky_posts);
}
}Вы можете вызвать функцию wptem_unsticky_post_by_id(123);, где 123 — ID записи, чтобы снять закрепление только с неё.
Использование плагинов для управления закрепленными записями
Если вы предпочитаете не работать с кодом, существуют плагины, которые упрощают управление закреплением.
Sticky Posts - Switch
Этот плагин добавляет в список записей колонку с переключателем закрепления. Вы можете быстро снимать или ставить закрепления без открытия записи.
Преимущества:
- Удобный интерфейс в админке.
- Массовое выделение и снятие закрепления.
- Бесплатен и прост в использовании.
Admin Columns
Плагин для расширенного управления списками записей, позволяет добавить колонки для статусов, включая закрепление. Здесь также можно быстро редактировать статус закрепления.
Подробнее и загрузка плагинов доступны на wpshop.ru.
Практические советы и рекомендации
1. Если нужно часто менять закрепление, лучше автоматизировать процесс через код или плагин.
2. Учитывайте, что закрепленные записи всегда выводятся в начале, поэтому удаление закрепления может изменить порядок контента.
3. Перед массовым удалением закреплений сделайте бэкап базы данных, чтобы можно было восстановить состояние при ошибках.
4. В темах и плагинах иногда меняется вывод закрепленных записей — проверяйте совместимость перед внесением изменений.
Заключение
Удаление закрепленных записей в WordPress — типовая задача, которую можно выполнить разными способами: вручную через админку, программно через код, или используя специальные плагины. Выбор метода зависит от конкретных задач и навыков пользователя. Используйте приведённые примеры кода и рекомендации для быстрого и безопасного управления закреплением записей на вашем сайте.