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

Эта инструкция и посвящена тому, как разрешить посетителям редактировать свои комментарии в WordPress.

Simple Comment Editing for WordPress

Нам нужен плагин Simple Comment Editing. Устанавливаете и активируете его. Теперь каждый автор комментария видит для своего комментария обратный отсчёт, показывающий, сколько времени у него осталось для редактирования комментария. По умолчанию, это пять минут.

01

Если вас это устраивает — отлично. Если хотите что-то изменить, то вас ждёт сюрприз — страницы настроек у плагина нет. Тем не менее, настройки можно менять. Перейдите к списку плагинов (Плагины -> Установленные), найдите там Simple Comment Editing и выберите «Изменить».

Откроется исходный код одной из страницы плагинов — он то нам и нужен. Если вы хотите увеличить доступное для редактирования время, то найдите строку

В ней цифру 5 замените на любое желаемое время. Максимальное значение — 90.

Если посмотреть следующие строчки

То становится понятно, как с лёгкостью это ограничение снять.

Есть ещё один полезный фильтр — sce_allow_delete. Он устанавливает, могут ли пользователи удалять свои комментарии. По умолчанию он включен на «пользователи могут удалять свои комментарии». Если вы хотите это изменить, то строку

поменяйте на

Даже при включенной этой настройки нет никакой кнопки для удаления комментария. Оказывается, порядок удаления следующий: пользователь сохраняет пустой комментарий, при этом у него возникает запрос — хочет ли он его удалить. Согласитесь, если бы я не сказал, не каждый бы догадался.

Мы можем проинформировать пользователей об этой возможности. Для этого найдите строку

И сразу после неё добавьте ещё одну:

Получается так:

02

03

Понятно, что можно переместить надпись в другое место, настроить стили для неё и прочее.

Важное замечание — поскольку мы редактируем исходный код, а не файл с настройками, то при обновлении плагина все изменения будут теряться!

Для этого плагина доступны следующие фильтры:

  • sce_loading_img — Изменение загрузочного изображения
  • sce_comment_check_errors — Добавление пользовательских сообщений ошибок
  • sce_allow_delete — Позволять удалять комментарии или нет
  • sce_get_comment — Добавить дополнительные данные в объект комментария
  • sce_extra_fields — Добавить дополнительный HTML в интерфейс редактирования
  • sce_buttons — Добавить дополнительные кнопки в интерфейс редактирования (помимо Отмена и Сохранить)
  • sce_content — Модифицировать отредактированный вывод HTML
  • sce_save_before — Модифицировать объект комментария перед сохранением через AJAX
  • sce_can_edit — Может пользователь редактировать комментарий или нет
  • sce_security_key_min — Как много ключей безопасности будут сохранены как метаданные поста
  • sce_load_scripts — Загружать скрипт SCE или нет
  • sce_comment_time — Как долго разрешать редактировать комментарий (в минутах)

Другие возможности и примеры на официальной странице плагина: https://github.com/ronalfy/simple-comment-editing

Похожие темы

Получение контроля над WordPress с помощью XML-RPC... WordPress не стал самой популярной платформой на планете для CMS и размещения блога, потому что он является довольно сложным в использовании. Скор...
Обновление сервера Apache и его компонентов... Вот здесь я рассказывал, как установить локальный сервер Apache. Со временем выходят новые версии программ, и возникает необходимость обновления. Проц...
Как установить Apache, MariaDB/MySQL и PHP на Cent... Если вас интересует, как установить сервер на Windows, то вам сюда "Установка Apache, PHP, MySQL, phpMyAdmin на Windows". Apache, Mari...
Новости софта от 30 января 2015 года (Apache, PHP,... Apache 2.4.12 Обновился Apache — сердце большинство веб-серверов. Об этом важном событии уже писалось тут. Теперь информацию хотелось бы т...
Как усилить веб-сервер Apache с помощью mod_securi... Если вас интересует установка mod_security на Apache под Windows, то обратитесь к статье "Как установить ModSecurity (mod_security) н...