Intereting Posts
Переопределение аргументов по умолчанию wp_nav_menu Отменить jQuery 'noConflict' – это действительно небезопасно? Установка раздела героя / всплеска в виде сообщения в блоге Проблема с загрузкой изображений в Localhost WordPress Есть ли способ уведомлять конкретных пользователей, когда новые публикации публикуются на определенные страницы? Взломанный веб-сайт WordPress, как сообщили Google Search Console, что делать? Удалить пользовательскую возможность Как импортировать большое количество сообщений в одном домене в другой домен? Шаблон страницы категории. Невозможно получить идентификатор категории. Применить класс Post к пользовательскому типу сообщения Не удается редактировать изображения Где найти изменения WordPress API для каждой выпущенной версии «Pre_get_posts» срабатывает при каждом запросе Я использую таблицы пользовательского типа или mySQL с нуля TwentyTwelve, где ящик с отрывками добавляет новые?

Строгий список тегов – пользователь должен выбрать только теги для сообщений

Выбирая теги для сообщений, пользователь может создавать новые теги на лету.

Например, у нас есть тег «животное», но пользователь неправильно описывает его как «аминал» – и WordPress создает его.

В нашем блоге важна строгая структура тегов. Как отключить эту функцию?

редактировать

Решение добавлено.

Solutions Collecting From Web of "Строгий список тегов – пользователь должен выбрать только теги для сообщений"

Вы можете деактивировать функцию тега по умолчанию и добавить через плагин пользовательскую таксономию, в которой перечислены только созданные тэги, например метатего. Его также можно сконструировать так, как метатекст тега.

Решение

Добавляет крючок к действию create_term . Две вещи:

  • Проверьте референта, и если он исходит из 'post.php', die
  • но перед остановкой удалите новый (и нежелательный) тег с помощью wp_delete_term ($ term_id, "post_tag");

Исходный код как плагин

 <?php /* Plugin Name: Tag Checker */ add_action('create_term', 'tag_checker_hook'); function tag_checker_hook($term_id) { $referer = $_SERVER['HTTP_REFERER']; if (strpos($referer, "/wp-admin/post.php") !== false) { // Delete it wp_delete_term($term_id, "post_tag"); wp_die("You are not able to create new tags."); } } ?>