Быстрая отправка комментариев в WordPress сочетанием клавиш Ctrl+Enter без плагинов

Отправка комментариев в WordPress клавишами Ctrl + Enter Привет, друзья! Спонтанный пост сегодня. Социальные сети и различные мессенджеры тесно переплелись с нашей жизнь и уже сложно представить, а что было бы без них? Это удобно, быстро и понятно буквально для каждого человека. Корпорации вкладывают огромные деньги не только в дизайн, заказывая научные исследования о том, как тот или иной цвет влияет на человека и его восприятие, но и в удобство использования, юзабилити. И в повседневном пользовании мы постепенно привыкаем к определенным вещам, отсутствие которых уже можно считать неудобным.

Ко многим фишкам мы привыкли и хочется, чтобы они были везде и работали одинаково.

Везде, да не везде! Я не особо любитель соцсетей или мессенджеров, но приходится пользоваться, и в итоге даже я «деформировался». В частности, я настолько привык к сочетанию клавиш ctrl+enter для отправки сообщений (или любых других форм, которые можно и нужно отправлять), что подсознательно я сначала нажимаю эти клавиши и только потом думаю. Банально собираюсь отвечать на накопившиеся комментарий на моем блоге, отвечаю и сразу начинаю нервничать, когда после нажатия ctrl+enter ничего не происходит.

Сегодня я дошел до критической отметки, решил, что так больше жить нельзя, и надо сделать, чтобы при нажатии ctrl+enter отправлялся комментарий и на моем блоге!

Сказано – сделано. Делюсь решением.

В админке своего WordPress блога заходите в раздел «Внешний вид – Редактор», справа сбоку ищете шаблон «Комментарии (comments.php)» переходите к нему и ищите конец формы, то есть строку «</form>». Выше добавьте:

<script type="text/javascript">
document.getElementById("comment").onkeydown = function (moz_ev) {
    var ev = null;
 
    if (window.event){
        ev = window.event;
    }
    else{
        ev = moz_ev;
    }
 
    if (ev != null && ev.ctrlKey && ev.keyCode == 13) {
        document.getElementById("submit").click();
    }
}
</script>

После этого нажимаем «Обновить файл», а затем чистим весь кеш (у меня стоит плагин WP Super Cache и поэтому в шапке всегда есть кнопка «Удалить весь кеш»).

Обратите внимание!
Пока писал, подумал, что, скорее всего, у вас не будет нужной формы в шаблоне comments.php, а она будет вынесена в файлы движка, которые трогать не рекомендуется и которые при каждом обновлении перезаписываются. Только у меня шаблону уже больше 6 лет и все костыли так за ним и тянутся из года в год, из версии в версию…

Для вас я придумал намного более элегантное и универсальное решение. Оно подойдет для любых версий WordPress, для любых шаблонов и т.д. В админке заходите во «Внешний вид – Редактор», ищите шаблон «Функции темы (functions.php)» и в самый низ добавляйте функцию:

/*** ДОБАВЛЯЕМ наш JS в форму отправки комментария ***/
	function ctrlEnterPosting () {
		echo '<script type="text/javascript">
		document.getElementById("comment").onkeydown = function (moz_ev) {
		    var ev = null;
 
		    if (window.event){
			ev = window.event;
		    }
		    else{
			ev = moz_ev;
		    }
 
		    if (ev != null && ev.ctrlKey && ev.keyCode == 13) {
			document.getElementById("submit").click();
		    }
		}
		</script>';
	}
	add_action('comment_form', 'ctrlEnterPosting'); // добавляем функцию ctrlEnterPosting в форму комментирования

Нужный нам JS сам встроится в форму комментирования в нужное нам место. Не забудьте почистить кеш и можно идти тестировать!

А пока вы не реализовали у себя, можете потестировать у меня и сказать спасибо!

И помните – кто отправит комментарий по-олдскульному, т.е. нажав на кнопку «Отправить», тот лох )))

Александр «АлаичЪ» Алаев
Александр «АлаичЪ» Алаев

Вот уже 18 лет я профессионально занимаюсь созданием и продвижением сайтов и 13 лет с удовольствием пишу в любимый блог. Создал заслужившие доверие в seo-сообществе программы FastTrust и ComparseR и известный сервис для проверки траста сайтов CheckTrust.ru.

В 2014 основал веб-студию «АлаичЪ и Ко» в Краснодаре: 1 место в рейтинге агентств интернет-маркетинга (Рейтинг Рунета), 2 место в рейтинге SEO-компаний (CMSmagazine), 12 место в рейтинге известность бренда SEO-компаний в России (SeoNews).

Выступаю на профильных конференциях (All In Top, SEO Conference, SEMPRO, Baltic Digital Days). Веду канал в telegram про seo и бизнес. SEO-специалист года 2019 и 2020 (Sape).

Ерунда и баянЪ!Зачет! Плюсую!
+2

Профессиональный технический аудит и рекомендации по оптимизации вашего сайта.
Тот самый необходимый «фундамент» для успешного продвижения.

30 000 руб.

Комплексный подход к решению поставленных задач: достижение топ-10 и увеличение трафика на сайт. В стоимость уже включены полный технический аудит и оптимизация сайта.

45 000 руб.

У вас недостаточно знаний и нужны ответы на вопросы?
Интересует мнение эксперта или надо проверить подрядчика?
Вы задаете вопрос — я отвечаю!

5 000 руб./час

Проведу подробное исследование вашего сайта и основных конкурентов, опубликую материал на блоге для обсуждения и коллективного поиска новых идей.

70 000 руб.

Я начал запись своего обучающего курса по seo-продвижению.

В каждом видео я разбираю какую-то одну важную тему, и делаю это последовательно, в порядке, подходящем для изучения с нуля. Видео выкладываются раз в неделю – по средам. Я думаю, весь курс будет состоять из 50-70 роликов, так до конца еще далеко, а значит самое время подписаться и начать изучение вместе со мной.

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

Комментарии: 32 Написать комментарий
  1. Ginger Dog (6 комм.)

    лучше про comparer напиши. как проект себя чувствует? будет жить или нет?

    Ответить
    • АлаичЪ

      ComparseR — правильно будет. Хорошо себя чувствует, процветает, а были какие-то сомнения?

      Ответить
      • Ginger Dog (6 комм.)

        Да, конечно, ComparseR. Опечатался!

        Были слухи о проблемах, но, видимо, наврали :)

        Ответить
        • АлаичЪ

          Хотелось бы узнать, что за слухи такие? И о каких проблемах речь?

          Ответить
          • Ginger Dog (6 комм.)

            Говорили, что программист тебя кинул и забрал исходники.

            Ответить
            • АлаичЪ

              Мало ли что говорили :) Это не так. А о том, идет работа или нет, всегда можно посмотреть на странице новостей — http://trust.alaev.info/news/

              Ответить
  2. Ginger Dog (6 комм.)

    и кстати, твой код не фурычит. при попытке отправки без кнопки, выдало — "Не спамьте, пожалуйста. Этот сайт защищен.

    Включите JavaScript в Вашем обозревателе и попробуйте еще раз..." при это js включен

    мозилла, если чо

    Ответить
    • АлаичЪ

      Хм... А в другом браузере ради интереса пробовал? Это на твоем блоге такая ошибка или на моем?

      Я во всех браузерах тестил на своем блоге — все прекрасно работало.

      Ответить
      • Ginger Dog (6 комм.)

        проверяю на этом сайта. проверил в хроме — тоже самое

        в хроме все по дефолту, он как раз для тестов

        Ответить
        • АлаичЪ

          Ладно, будем разбираться, попрошу еще кого-нибудь попробовать оставить коммент таким макаром, может поймем, в чем же дело!

          Ответить
          • Ginger Dog (6 комм.)

            Проверил еще раз, сейчас все нормально. Возможно на моей стороне был баг.

            Ответить
  3. seoonly.ru (68 комм.)

    Удобно)) спасибо!

    Ответить
  4. Максим (2 комм.)

    Хром Win10. Полет нормальный.

    Ответить
  5. Виталий (1 комм.)

    ctrl+enter

    Ответить
  6. Максим (2 комм.)

    Firefox 45, Win 10. Полет нормальный

    Ответить
  7. Иван (3 комм.)

    ctrl+enter работает)

    Ответить
  8. Руслан (2 комм.)

    Жаль, что сижу с телефона, не могу сразу протестировать))))

    Кстати странно, что разработчики вордпресс сами этот функционал не добавили

    Ответить
  9. Роман (4 комм.)

    Хм — работает :) Только вордпрес не использую (

    Ответить
  10. Валерий (66 комм.)

    Благодарочка

    Ответить
  11. Andrew (1 комм.)

    Good job!!!

    Ответить
  12. Роман (3 комм.)

    Сначала подумал — ну что за ерунда.

    А потом подумал, как удобно владельцам ноутов без мышки

    Ответить
  13. Сергей (1 комм.)

    Просто проверочка на CTRL + ENTER

    Ответить
  14. Валерий (1 комм.)

    Спасибо, Александр! Очень интересная статья и ваш материал был очень полезен, лично для меня!

    Ответить
  15. Альберт (4 комм.)

    Спасибо, Алаичъ, будем внедрять!

    Ответить
  16. webvim.ru (2 комм.)

    Комментарии — это не сообщения в месседжерах. Приучая читателей к такой простой отправке, они комментарии будут строчить как сообщения: по одному слову. Собственно, выше так и получается.

    Лучше будет, чтобы перед нажатием на кнопку "Отправить", комментатор еще раз прочел свое сообщение, обдумал, а не строчил как из пулемета.

    П. с. На своем блоге удаляю все комментарии типа "Спасибки", "Классная статья" и пр.

    Ответить
  17. Андрей (1 комм.)

    ctrl + enter

    Ответить
  18. Андрей (1 комм.)

    Отличное решение, спасибо!

    Ответить
  19. Иван (1 комм.)

    Спасибо за совет!

    Ответить
  20. Александр (1 комм.)

    Спасибо, пригодился совет.

    Ответить
  21. Русаков Вячеслав aka Udachnik (4 комм.)

    Учитывая накопленный пользовательский опыт аудитория для конкретного ресурса вряд ли станет пользоваться данной фишкой "на постоянке", скорее побалуются и будут жать "по старинке" ))

    Ответить
  22. gobzer (2 комм.)

    Тогда уж и комменты надо оформлять в стиле чата. А CTRL+Enter — это, сочетание клавиш для уведомления об ошибках и опечатках. Такие системы типо Орфо очень популярны

    Ответить
  23. Acekoff (1 комм.)

    нукась попробуем, что там земляк придумал)))

    Ответить