Вопрос или проблема
У меня есть сайт с обоями. У меня было много постов без тегов, и я попробовал несколько плагинов для автоматического добавления тегов, таких как Simple Tags, где нужно установить несколько тегов, и они будут автоматически использоваться для постов. Затем я использовал опцию автотегирования постов, и она добавила все 50-60 тегов к ряду отдельных постов, что значит, что к каждому из 500 постов было добавлено по 50-60 тегов. Теперь мне очень трудоемко редактировать каждый пост и удалять ненужные теги. Есть ли способ удалить эти 50-60 тегов с помощью MySQL-запроса? Возможно использование либо плагина, либо MySQL-запроса. Пожалуйста, помогите.
Чтобы изменить теги на множестве постов, вы можете использовать стандартный режим массового редактирования WordPress. Это более безопасно, чем SQL-запрос.
Если вы на странице редактирования поста, вы увидите все посты. Откройте параметры в правом верхнем углу и отредактируйте несколько постов, возможно, 500.
После этого изменений переключитесь в режим массового редактирования. Активируйте все посты с помощью флажка и используйте Редактировать
в Массовом режиме
. Также вот снимок экрана.
Теперь у вас будет текстовое поле со всеми тегами, которые находятся во всех постах, и вы можете удалить теги.
Альтернативой является плагин Search Replace, который может изменить теги для каждого поста через SQL-запрос, но это более прямой доступ к базе данных и менее безопасно.
Посмотрите на WordPress › Bulk Move « WordPress Plugins. Он работает иначе, чем режим массового редактирования WP, и может быть полезен.
Bulk Move – это плагин для WordPress, который можно использовать для массового перемещения постов из одной категории или тега в другую. Этот плагин также можно использовать для удаления постов из определенной категории или тега.
Ответ или решение
Для массового удаления большого количества тегов из множества постов на сайте WordPress существуют несколько подходов, включая использование как встроенных функций, так и сторонних плагинов или SQL-запросов. Вот несколько вариантов решения вашей проблемы:
1. Массовое редактирование через панель управления WordPress
WordPress предоставляет встроенные функции для массового редактирования постов, что является более безопасным способом по сравнению с прямым изменением базы данных.
- Перейдите на страницу «Посты» в админ-панели.
- Убедитесь, что вы находитесь в режиме отображения всех постов.
- В правом верхнем углу установите количество отображаемых постов (например, 500).
- Включите все посты с помощью флажка в заголовке списка.
- Из выпадающего меню «Действия» выберите «Изменить» и нажмите кнопку «Применить».
- Откроется меню массового редактирования, где вы сможете управлять тегами. Удалите ненужные теги из текстового поля.
2. Использование плагина Bulk Move
Плагин Bulk Move позволяет массово перемещать посты между категориями и тегами. Он может быть использован для удаления постов из определённых тегов:
- Установите и активируйте плагин Bulk Move.
- Перейдите в настройки плагина и выберите варианты для удаления тегов.
- Укажите теги, которые вы хотите удалить, и выберите посты, к которым они применяются.
3. SQL-запрос
Если вы предпочитаете выполнить задачу напрямую через SQL-запрос, вот пример запроса, который вы можете использовать. Примечание: Перед выполнением SQL-запроса обязательно создайте резервную копию базы данных.
DELETE FROM wp_term_relationships WHERE object_id IN (
SELECT ID FROM wp_posts WHERE post_type = 'post' AND post_status = 'publish'
) AND term_taxonomy_id IN (
SELECT term_id FROM wp_terms WHERE name IN ('Тег1', 'Тег2', 'Тег3', ..., 'ТегN')
);
В этом запросе:
wp_term_relationships
– таблица, хранящая связи между постами и их тегами.wp_posts
– таблица с постами.wp_terms
– таблица с тегами.- Замените
Тег1
,Тег2
и т.д. на названия тегов, которые вы хотите удалить.
4. Плагин Search & Replace
Вы также можете использовать плагин Search & Replace, который позволяет выполнять поиск и замену контента в базе данных. Однако будьте осторожны с его использованием, так как он взаимодействует прямо с базой данных.
Заключение
Вы можете выбрать любой из вышеуказанных методов в зависимости от того, насколько удобен он для вас. Для большинства пользователей, особенно для тех, кто не имеет опыта работы с базами данных, я рекомендую использовать встроенные функции массового редактирования или воспользоваться плагином Bulk Move, так как это проще и безопаснее.