Плагин для WordPress “Предпросмотр комментария” на jQuery
18 декабря 2008 г.
Описание
Плагин “Предпросмотр комментария” (jQuery Comment Preview) подключает к форме комментирования WordPress функцию предпросмотра комментария без перезагрузки страницы. Работает на популярном фреймворке jQuery.
Для работы плагина требуется версия WordPress: 2.9 или выше.
Пример работы данного плагина вы можете наблюдать на настоящем блоге.
Особенности плагина
- Реализует красивый “живой” предпросмотр комментария, не занимая при этом дополнительного пространства на странице.
- Позволяет подключить простенький HTML-редактор, с помощью которого можно быстро вставлять HTML-теги в текст комментария (инструкции по работе с HTML-редактором находятся на странице настроек плагина).
- В предпросмотре можно отобразить: имя комментирующего, его аватар (статический или динамический через сервис gravatar.com), время и дату комментария, текст комментария. Все это можно оформить с помощью CSS под дизайн вашего сайта.
- Если вы хотите снизить количество запросов к серверу вашего хостинга, в настройках можно запретить подключение файла стилей плагина.
- Скрипт плагина и файл стилей подключаются только на страницах, где присутствует форма комментариев.
Скачать
Внимание: для полноценной работы плагина могут потребоваться знания технологий CSS и HTML.
Плагин “jQuery Comment Preview” (предпросмотр комментария на WordPress)
Последняя версия: 0.5 | Последнее обновление: 10.09.2011
Установка
- Скопировать папку jquery-comment-preview в папку с плагинами: /wp-content/plugins/.
- Активировать плагин через меню “Плагины” в админке WordPress.
- Если понадобится, настроить опции в админке на странице Параметры -> jQuery Comment Preview.
- Если необходимо, отредактировать CSS-стили для блока предпросмотра в файле jquery-comment-preview.css.
- Готово.
HTML-код блока предпросмотра
Плагин создает следующую структуру HTML-кода для блока предпросмотра (это может пригодиться при оформлении через CSS):
1 2 3 4 5 6 7 8 9 10 11 | <div id="jcpWrap"> <div id="jcpToolbar"> <div id="htmlEditor"> <a>кнопка</a> <a>кнопка</a> ... </div> <div id="previewTab">Предпросмотр</div> </div> <textarea name="comment"></textarea> </div> |
Если ничего не работает
- Убедитесь, что используете соответствующую версию WordPress, которая требуется для работы плагина.
-
Убедитесь, что в файле header.php вашей темы присутствует следующий код:
1<?php wp_head(); ?>Если его нет, то вставьте перед тегом </head>.
- Если выполнение первых 2-х пунктов не решило проблему, сообщайте подробности в комментарии к этому посту.
История версий
- Версия 0.5 (10.09.11):
- теперь, если при вставке ссылки не выделен текст, то анкором становится сама ссылка;
- добавлена возможность вставки ссылки на изображение через диалоговое окно.
- Версия 0.4 (19.03.11):
- оптимизирован jQuery-скрипт;
- изменены названия идентификаторов блоков, внесены соответствующие изменения в CSS-файл;
- устранен баг при использовании одинарной кавычки в файле перевода и в шаблоне блока предпросмотра;
- изменен шаблон блока предпросмотра по умолчанию;
- из шаблона блока предпросмотра теперь вырезается тег <script></script>;
- изменен путь к файлу jquery-comment-preview.js;
- сделан уменьшенный вариант файла md5.js.
- Версия 0.3 (23.09.10):
- данная версия предназначена для WordPress 2.9 и выше;
- исправлено: плагин не работал, если “Адрес WordPress” и “Адрес сайта” различались;
- в тексте кнопки предпросмотра сделана возможность использовать одинарную кавычку;
- добавлена кнопка “О плагине”;
- оптимизирована система сохранения настроек.
- Версия 0.2 (02.05.10):
- текстовые ссылки в предпросмотре становятся кликабельными;
- новая опция: “Добавлять параметр target=”_blank” к внешним ссылкам”;
- новая опция: “Показывать кнопку с WordPress смайлами” - использует встроенные в WordPress смайлы;
- добавлена французская локализация.
- Версия 0.1.7 (18.03.10):
- исправлена ошибка, когда предпросмотр не работал до тех пор, пока не была нажата кнопка “Сохранить настройки” на странице опций плагина;
- вместо jQuery 1.3.2 теперь подключается jQuery 1.4.2.
- Версия 0.1.6 (05.01.10):
- исправлена ошибка, когда теги HTML-редактором вставлялись некорректно в Internet Explorer;
- при нажатии на кнопку “ссылка” открывается окно для ввода ссылки, как HTML-редакторе WordPress.
- Версия 0.1.5 (20.12.09):
- изменен дизайн панели предпросмотра, теперь он в стиле HTML-редактора WordPress;
- изменена структура шаблона HTML-редактора;
- скрипт прицепляется теперь по параметру name тега textarea, a не по id;
- решена проблема, когда в ряде случаев предпросмотр не работал;
- скрипты и файл стилей плагина подключаются теперь в head-секции кода страниц;
- jQuery теперь берется с Гугла.
- Версия 0.1.4 (20.06.09): добавлена опция “Значение параметра id тега textarea:”; добавлена возможность вставки даты и времени комментария в шаблон блока предпросмотра; добавлена опция показа аватара с сервиса gravatar.com.
- Версия 0.1.3 (07.02.09): доработаны фильтры форматирования текста в предпросмотре; удалена автоматическая подгонка ширины панели предпросмотра под ширину поля <textarea>, теперь ее ширину нужно изменять через CSS, для этого нужно поиграться с параметром width идентификаторов #jquery-comment-wrap и #jquery-comment-preview, которые находятся в файле jquery-comment-preview.css.
- Версия 0.1.2 (18.12.08): изменения, связанные с некорректным отображением формы комментирования в IE на некоторых WordPress-темах.
- Версия 0.1.1 (17.12.08): пофиксен баг: невозможно было отправить комментарий.
- Версия 0.1 (16.12.08): исходная версия.
автор: Dimox | рубрика WordPress
Хм, кстати. А где физически лежит jquery-comment-preview.js ? А то я его код беру из исходного кода страницы, но подозреваю, что из файла то он будет другой.. А вот файла что-то не вижу.
Что характерно, если дергать код из http://dimox.name/jquery-comment-preview-script-2/ , то предпросмотр работает. А вот если из плагина, то нет :(
Он формируется динамически из файла jquery-comment-preview.php.
Здравствуйте.
1. Подскажите пожалуйста, как сделать, чтобы при нажатии кнопки между тегами уже стояла надпись, например при нажатии code появлялось надпись” (без точек :))
2. Вставляю код для кнопки картинки
, но при нажатии не появляется java форма для ввода ссылки, побовал Ваш вариант
но пишет
В чем может быть проблема или я не так что-то ввожу?
3. У меня стоит плагин Simle Local Avatar (пользователи могут залить себе аватарку в профиле), но в предпросмотре все равно отображаются gravatar. Для отображения SLA я использую код в фале comments.php
2
3
<?php echo get_avatar($comment); ?>
</ol>
Можно ли как-нибудь сделать, чтобы в предпросмотре отображались локальные аватарки а не gravatar.
1. Такой возможности нет.
2. Правильным является первый код, который вы указали. А то, что не появляется java форма для ввода ссылки - это потому, что такая функция в плагине не заложена. Возможно, что в будущем ее добавлю.
3. Это потребует много изменений в плагине, так что никак.
Спасибо за ответ. Несмотря на эти маленькие недостатки, все равно предпочел ваш плагин остальным. Надеюсь, что он получит дальнейшее развитие.
Потестил плагин, - плагин крутой. но нашел небольшие изьяны:
1. Не совсем совместим с Search Meter забивает базу поисковых запросов надписьями jquery-comment-preview.js?879879782 (цифры)
2. При нажатии обновить панель исчезает вовсе.
3. На локальном компе с кодировкой проблем не было, выложил в интернет и все записи которые можно поменять в панели в настройках в том числе название “предпросмотр”, “скрыть предпросмотр” вылазит в виде каракулей. перевел все файлы в utf-8 без бом, прописал в htaccess кодировку ютф8 по умолчанию - не помогает.
1. Ничем не могу помочь.
2. Непонятно, о чем речь.
3. Проблема в вашем сайте, а не в скрипте.
Спасибо Вам за этот отличный плагин.
Установил, всё отлично работает, но проблема в том, что когда я отправляю комментарий, он выводится без HTML тегов, т.е. если я выделил слово курсивом, то в предпросмотре всё ОК, а вот в готовом виде на странице всё обрезается. Я так понимаю что где-то стоит запрет на HTML в комментах. Подскажите, пожалуйста где это может быть?
Можно попробовать это, но не уверен, что поможет.
Не помогло. Ошибку выдаёт. Я так понял запрет реализован в файле functions.php ? и относиться только к данной теме сайта, в смысле к той что у меня используется?
Возможно, что да. Либо какой-то плагин, который их обрезает.
Всё сделал.
Удалил вот этот участок кода в functions.php:
2
3
4
5
6
7
8
9
10
11
12
function preprocess_comment_striptags($commentdata) {
$commentdata['comment_content'] = strip_tags($commentdata['comment_content']);
return $commentdata;
}
add_filter('preprocess_comment', 'preprocess_comment_striptags');
// remove html tag when showing comments
function comment_text_striptags($string) {
return strip_tags($string);
}
add_filter('comment_text', 'comment_text_striptags');
Прекрасный плаг, давно его юзаю. Одно непонятно: почему он не сообщает, что есть обновление? :(
У меня до сих пор стояла версия 0.2, сюда забрела совершенно случайно, а тут уже разговор за 0.5 :)
Вот уж не знаю, от меня тут ничего не зависит.
Странно, вообще-то.. А почему другие плаги сообщают, что есть обновление?
Не все, кстати. Я думала, тут дело в том, лежит плаг на wordpress.org или не лежит..
Да, от этого и зависит. Но мой плагин там есть, поэтому действительно странно.
Плагин работает, спасибо большое :)
Есть один косяк - появляется он в ГуглХроме и Сафари. Опера и файрфокс не повторяют.
Косяк: при нажатии на кнопку “Предпросмотр”, при наличии введенных в textarea comment’ов любых символов, появляется два символа перевода строки. Короче два новых абзаца вставляется, ну или один .