Так недавно я перевел клиента из Blogger в Wordpress.
Когда сообщения импортировались из блоггера, он сохранял «метки» блоггера как «теги» в Wordpress. Поскольку вместо этого я хотел бы использовать их в качестве категорий, я использовал плагин для преобразования всех тегов в категории.
Это работало отлично и денди, но оно оставило Uncategorized на всех моих сообщениях. Так что теперь у меня есть около 900 сообщений, которые имеют свои правильные категории, а также «Без рубрики».
Поэтому моя цель состоит в том, чтобы удалить «Без рубрики» из всех 900 сообщений, но я изо всех сил пытаюсь найти быстрый способ сделать это.
Кто-нибудь знает, как я мог бы сделать это массовым методом?
categories
Corey
источник
источник
Uncategorized
категорию.Uncategorized
категорию, это категория сообщений по умолчанию, назначаемая сообщениям, когда они не назначены, но мы можем сделать это по умолчанию, перейдя поSettings-->Writing
Ответы:
С установленным wp-cli вы можете запустить скрипт bash, подобный этому, чтобы удалить категорию «без категории» из всех сообщений с более чем одной категорией.
Сохраните это как-то так,
delete_uncategorized.bash
а затем запуститеbash delete_uncategorized.bash
из командной строки.источник
Вот плагин, который после активации перебирает все сообщения, которые находятся в категории без категории. Если это в другой категории, он удаляет без категории. Далее, когда сообщение сохранено, оно выполняет ту же проверку.
источник
Немного опоздал на вечеринку, ребята, но мне просто нужно было сделать это самому. Обходной путь будет через SQL-запросы в phpmyadmin, что-то вроде:
(замените префикс wp_ вашим префиксом) Обычно «uncategorized» имеет term_taxonomy_id = 1. Приведенный выше запрос группирует все идентификаторы сообщений, если существует более одной категории, поэтому, естественно, «uncategorized» отображается первым в группе. Поэтому выберите все те строки, которые имеют term_taxonomy_id = 1, и удалите их. И это все!
Теперь все, что вам нужно сделать, это отредактировать поле count "uncategorized" ( term_taxonomy_id = 1) в таблице wp_term_taxonomy . Подсчет количества - это количество статей, перечисленных в этой категории, но конкретное поле не обновляется автоматически.
Если вы зайдете в панель администрирования wp, раздел категорий, старый (неправильный) номер счета по-прежнему будет отображаться, но если вы нажмете этот номер и перейдете к списку сообщений «некатегоризовано», WordPress обычно пересчитывает сообщения, связанные с этим. категория. Правильный счетчик будет отображаться в правом верхнем углу, поэтому перейдите в свою базу данных и отредактируйте поле количества соответствующим образом :)
Изменить: На самом деле, счет в конечном итоге обновляется, но не сразу, так что вы можете пропустить обновление счетчика вручную.
источник
Основываясь на ответе @ TechSmurfy, я придумал это:
источник
Что ж, самый простой способ, не связываясь с базой данных, - это создать новую категорию, установить ее по умолчанию, а затем перейти в список сообщений и отсортировать по категории «без категории». Отредактируйте эти сообщения и удалите тег категории «без категории».
После этого вы можете удалить категорию. Категория не может быть удалена, если какой-либо пост использует эту категорию.
источник
Поработав и попробовав все подходы, описанные выше, я обнаружил, что этот sql-запрос является самым быстрым способом удаления сообщений из категории «Без категории», в которых имеется более одного кота.
Использование WP-CLI было бы лучшим вариантом, если бы он не был медленным, как ад.
В моем случае мне пришлось удалить более 50 000 срочных отношений, так что это просто НЕУДАЧИЛО.
источник