У меня большой словарный запас, и административные представления пока не работают для таксономии. Менеджер по таксономии также не делает этого. Есть ли варианты массового удаления?
7
taxonomy-terms
giorgio79
источник
источник
Любимый метод массового удаления контента по типу контента, словарю таксономии и т. Д. Использует модуль http://drupal.org/project/devel . Для удаления всех терминов из словаря:
Вуаля - пустой словарный запас, в остальном нетронутый.
источник
Вы можете использовать следующую команду:
Если это не работает, убедитесь, что вы очистили свой кеш (например, memcached).
Или быстрее, используя следующий грязный SQL-запрос:
Где 123 - ваш словарный идентификатор, который вы должны изменить.
Вы можете получить
vid
название своего словаря с помощью следующей команды:Смотрите также:
источник
drush sqlq "DELETE FROM taxonomy_term_data WHERE vid = (SELECT vid FROM taxonomy_vocabulary WHERE name = 'vocabulary_name')"
Представления администратора просто предоставляют предварительно настроенные представления VBO. Сам VBO прекрасно работает с терминами (или любым другим типом сущности). Установите VBO самостоятельно и создайте необходимое представление, а затем используйте VBO для удаления терминов.
источник
Чтобы массово удалить все термины таксономии в словаре в Drupal 7, используйте
taxonomy_term_delete
функцию, выполняя цикл по всем терминам.Рассмотрим следующий пример:
Еще проще, если у вас есть Drush и Devel модуль установлены, вы можете использовать следующую команду для удаления основной массы всех терминов в систематике * не выходя из своей раковины:
* Это предполагает, что у вас включен модуль Devel Generate, что можно сделать при необходимости:
$ drush en -y devel && drush en -y devel_generate
источник
Я бы порекомендовал использовать административные представления с VBO, чтобы получить представление для замены отображения терминов таксономии по умолчанию.
Что вам нужно сделать, это следующее:
источник
Я только что написал сообщение в блоге о том, как добавить кнопку для удаления всех терминов таксономии здесь .
По существу:
Для этого я использую плагин jQuery Easy Confirm Dialog . Сначала загрузите библиотеку отсюда и поместите ее в папку «js themes».
Затем мы можем добавить кнопку «Удалить все условия» с небольшим кодом в пользовательском модуле:
Теперь нам нужно определить путь к нашей функции, чтобы удалить термины:
И, наконец, добавьте функциональность, чтобы фактически удалить термины:
источник
Просто для завершения ответов есть модуль, который делает именно это. Это модуль taxonomy_delete_all_terms . Я использовал это, и это работает.
источник
Мой ответ тангенциально связан с исходным вопросом. Основываясь на ответе Кенорба , если вы хотите очистить ВСЕ словари на своем сайте, вы можете выполнить следующее:
источник
Как сказал @texas_bronius, если у вас включена функция генерации devel, вы можете использовать это, но сделав еще один шаг вперед, если у вас также установлен drush, я использую эту команду:
И просто замените [vocabulary_machine_name] на имя машины вашего словаря. «0» указывает, сколько терминов нужно добавить, а «--kill» удаляет те, которые в данный момент находятся там.
источник