Меняем форму комментирования Wordpress - удаляем поле URL, label полей и надпись "Ваш email не будет опубликован"

Не так давно возникла необходимость немного кастомизировать форму комментирования. Создавая тему с нуля, хочется, чтобы все блоки и поля соответствовали общей концепции задумки.
Что не нравится и кажется лишним в стандартной форме:
  • поле URL
  • label к каждому полю
  • надпись "Ваш email не будет опубликован" (или как-то так)

Убрать поле URL из формы комментирования Wordpress

Существует несколько способов. Можно покопаться в, так сказать, ядре wordpress-а. Но в случае обновления CMS все внесенные изменения сбросятся, т.к. файлы будут перезаписаны. Оптимальный на мой взгляд вариант, добавить вот такую штучку в свой functions.php :

function remove_comment_fields($fields) { unset($fields['url']); return $fields; } add_filter('comment_form_default_fields', 'remove_comment_fields');

Убрать надпись "Ваш email не будет опубликован" над формой

Проходим в папку сайта, далее папка wp-includes, внутри нее файл comment-template.php
Строчка примерно ~2235, найти нужный кусок можно по фразе comment_notes_before . По умолчанию для этого параметра и задан ненужный текст. Убираем его, оставляя значение пустым, т.е. в качестве значения будет просто ''

Убираем подпись для поля текста комментария

Там же в файле comment-template.php примерно на строке ~2218 ищем аргумент comment_form_default_fields . По умолчанию в его значение запиханы и <p> и label. Все это удаляем, оставляя в качестве значения '<textarea ....... />'
Внутрь я еще пихаю placeholder="Текст вашего сообщения", чтобы подсказка все таки была, но внутри поля.

Убираем подписи к полям "Имя" и "Email"

Находимся все так же в файле comment-template.php, ищем строчку ~2198. Искать внутри файла можно по фразе comment-form-author. Здесь такая же ситуация, как и с texarea. Аргументам autor и email присвоены <p> и <label>. Все это удаляем так, чтобы значение было вида '<input ..... />'
Также добавляю placeholder - "Ваше имя" для поля author и "Ваш email (не будет опубликован)" для поля email.


N.B. Оригинал файла comment-template.php, конечно же, лучше сохранить где-нибудь у себя. На тот случай, если что-то пойдет не так и придется все откатывать. После каждой правки в файле проверяем работу на сайте. Аккуратно и внимательно удаляем и добавляем что-то свое, не забывая о кавычках, закрывающих тегах и т.д.
И, конечно, придется смириться с тем, что после каждого обновления WP изменения нужно будет вносить заново. Возможно, существуют какие-то решения с помощью functions как и для поля URL. Но я, честно говоря, не нашла.

Итог

После всех внесенных изменений, а также с помощью стилей у меня получилась вот такая форма. Аккуратно и функционально, на мой взгляд.


Комментарии

Отправить комментарий

Популярные сообщения из этого блога

Легенда об Андрогинах

Создание кастомного тип постов в Wordpress