Intereting Posts
Санитарная обработка данных для регистрации пользователя и входа пользователя Создание и редактирование сообщений с передней стороны Сила HTTPS с использованием .htaccess – застряла в цикле перенаправления Пользовательский вид дерева таксономии не отображается правильно в бэкэнд как создать параметры экспорта / импорта темы в wordpress без плагина Правильная процедура при разработке веб-сайта WP для клиента @media применяется во всем мире, а не отдельно для каждой ширины экрана Лучший способ выполнения настраиваемых запросов на mysql для каждой страницы Сайт имеет поддельных пользователей, зарегистрированных с похожим шаблоном в имени пользователя и электронной почте CKEditor: Uncaught TypeError: switchEditors.switchto не является functiononclick Ограничение фида WordPress до определенного предела символов Создайте настраиваемую страницу для темы, невидимую в панели администратора? как добавить re-order в панель wp пользователя wordpress? Отфильтровать сообщения по пользовательским полям и показать их на новой странице Фотографии, чтобы отображать фотографии из библиотеки содержимого

Как добавить HTML5, требуемый для wp_editor

Я хочу добавить HTML5, необходимый для проверки на стороне клиента, на textarea, сгенерированный

<?php $content = ''; $editor_id = 'YOURID'; wp_editor( $content, $editor_id ); ?> 

Каков наилучший способ добавить required текст в textarea? Спасибо.

Solutions Collecting From Web of "Как добавить HTML5, требуемый для wp_editor"

Визуальный редактор не является текстовым полем, это iframe, поэтому даже если вы можете установить атрибут, он ничего не сделает. Вы можете установить атрибут в скрытой текстовой области, которая будет отправлена ​​на сервер, но поскольку она скрыта, я не знаю, как будет отображаться предупреждение о том, что она не заполняется, и она может быть разной между браузерами (она скрыта, поэтому есть нет очевидной визуальной привязки для отображения предупреждения)

Я сделал следующее успешно для плагина, который использует несколько визуальных редакторов (только некоторые из которых требуются) на экране администратора.

  1. При создании редактора добавьте класс, уникальный для моего плагина, и укажите, что в этом редакторе требуется содержимое.
  2. Зацепите функцию «the_editor».
  3. Эта функция проверяет, содержит ли разметка для редактора мой собственный класс. Если это так, он добавляет требуемый атрибут.

Я могу стилизовать поле, используя

 textarea[required]:invalid 

и форма генерирует ошибку, если она отправляется, пока это поле пусто (хотя я пока тестировал только в Safari).

Пример кода ниже (этот код был взят из гораздо более крупного класса). Во-первых, выдержка из функции, которая создает редактор.

 $addlClass = ($required) ? 'my-required-field' : ''; $settings = array( 'media_buttons' => false, 'textarea_name' => $fieldName, 'editor_class' => $addlClass ); wp_editor($cleanFld, $fieldId, $settings); 

Тогда, мой крючок:

 add_action('the_editor', array($this, 'CheckIfEditorFieldIsRequired')); 

Наконец, эта функция:

 public function CheckIfEditorFieldIsRequired($editorMarkup) { if (stripos($editorMarkup, 'my-required-field') !== false) { $editorMarkup = str_replace('<textarea', '<textarea required', $editorMarkup); } return $editorMarkup; }