Как ограничить длину текста поля в редакторе WordPress? - PullRequest
0 голосов
/ 17 августа 2010

Я хотел бы ограничить поля при создании нового поста в WordPress.Для заголовка он не должен превышать 40 символов.Для контента он не должен превышать 400 символов.Если эти максимальные значения превышены, я хотел бы показать сообщение об ошибке и не позволить пользователю продолжить.Как мне это сделать в WordPress?

1 Ответ

1 голос
/ 17 августа 2010

Вы должны иметь возможность использовать фильтры WordPress для изменения кода, который выводится при вызове редактора.По сути, вы хотели бы использовать его для вставки некоторого JavaScript и дополнительного тега div для отображения вашей ошибки, а затем просто прочитайте содержимое идентификатора «editorcontainer» и покажите ошибку, как только она достигнет определенного предела символов.

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

 apply_filters("the_editor", "customfunction_limitarea");

Где область customfunction_limit - это созданная вами функция для вставкиJavaScript.Вы можете увидеть, как в настоящий момент вызывается the_editor и как фильтры по умолчанию применяются в «wp-includes \ general-template.php» в строке 1822. Значение по умолчанию выглядит следующим образом:

$the_editor = apply_filters('the_editor', "<div id='editorcontainer'><textarea rows='$rows'$class cols='40' name='$id' tabindex='$tab_index' id='$id'>%s</textarea></div>\n");

Я бы попытался изменитьэто утверждение, поместив новый фильтр в файл functions.php, расположенный в каталоге тем, так что вам не нужно беспокоиться о том, что он будет перезаписан во время обновления.В противном случае, если вам абсолютно необходимо отредактировать ядро ​​wordpress (как правило, нет-нет), я думаю, что general_template.php будет местом, где это можно сделать.

По сути, просто немного прочитайте о фильтрах wordpress (предупредил, что нет тонны документации или примеров, доступных для него, кроме основных вещей), и это должно обеспечить все, что вам нужно.В конце проверки ввода достаточно легко найти сценарии, просто Google jQuery ограничивает количество сообщений.Примерно так может быть именно то, что вы ищете:

http://swiki.fromdev.com/2010/02/jquery-maximum-limit-texttextarea-with.html

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