jQuery-скрипт для WordPress “Привет, комментатор!”
Написал небольшой jQuery-скриптик, который призван несколько повысить удобство комментирования на WordPress-блоге.
Как работает скрипт
Все очень просто. Он проверяет, заполнены ли обязательные поля Имя/E-mail
, и выполняет следующее:
- Если посетитель блога ранее оставлял комментарий, то при следующем комментировании его встречает надпись: “С возвращением, %Имя комментирующего%!”
- При этом поля
Имя/E-mail/URL
спрятаны, как ненужные в данный момент элементы, остается только поле для комментария. - Комментатор может поменять свои данные, нажав на ссылку “Изменить”.
- Если у комментатора в браузере отключена поддержка JavaScript, то он увидит полную форму.
Чтобы скрипт выполнялся в принципе, необходимо, во-первых, чтобы у посетителя сайта работали куки в его браузере, во-вторых, чтобы WordPress-блог выводил ранее введенные данные в форме комментирования.
Обязательно убедитесь, что ваш блог выполняет второе условие (выводит ранее введенные данные в форму), иначе никакого смысла в подключении скрипта не будет. Я знаю, что некоторые WordPress-плагины каким-то образом предотвращают появление ранее указанных посетителем данных в коммент-форме. К примеру, так было на моем блоге, когда у меня стоял плагин “Paged Comments”.
Пример
Если вы хотя бы раз оставляли комментарий на моем блоге, то увидите рабочий пример на любой странице, содержащей форму для комментария.
Установка
- В файле
comments.php
найдите код полей<input />
для вводаИмени/E-mail/URL
и оберните его в контейнер<div id="author-data"></div>
. Этот блок – то, что будет прятаться, если поля заполнены. - Затем создайте какой-либо файл с расширением
.js
, например,scripts.js
и поместите в него скрипт (либо в ранее существующий js-файл):(function($) { $(function() { var author_val = $('#author').val(); if( author_val !='' && $('#email').val() !='' ) { $('#author-data').hide(); $('#author-data').before('<div id="welcome">С возвращением, <strong>'+author_val+'</strong>! <a href="#">Изменить »</a></div>') $('#welcome a').toggle( function() { $('#author-data').show(300); $(this).html('Свернуть »'); return false; }, function() { $('#author-data').hide(300); $(this).html('Изменить »'); return false; } ); } }) })(jQuery)
- Закиньте этот файл в папку с вашей темой.
- Теперь подключите скрипт, добавив следующий код в файл
header.php
перед тегом</head>
:<script type="text/javascript" src="<?php bloginfo('stylesheet_directory'); ?>/scripts.js"></script>
- Если в вашей теме не подключен фреймворк jQuery, то перед строкой из предыдущего пункта добавьте такую:
<?php wp_enqueue_script('jquery'); ?>
- Вот и все.
Теперь, я думаю, вашим посетителям-комментаторам будет приятно, если вы встретите их приветом и спрячете “лишние” поля из формы комментариев =)
Комментарии (88)
Может, сделаете из этого плагин?:)
Нет смысла, процесс установки от этого никак не поменяется.
Спасибо за скрипт- заработал сразу! Я ещё добавил к приветственной надписи прикольную картинку.
Подскажите, как сделать, чтобы скрипт заработал (на другом блоге) если форма комментирования выводится через файл comments_template вордпресса, а не через comments.php шаблона?
Не знаю, я всегда вывожу через comments.php.
У меня почему то ссылка “изменить” не появляется
Я его у себя реализовал с помощью такого кода
Может что то неправильно?
Огромное спасибо! Все очень доступно и понятно расписано, да и сам скрипт классный.
Я был приятно удивлен, когда попытался установить скрипт у себя и все вышло с первого раза :)