Плагин для WordPress «Предпросмотр комментария» на jQuery
Описание Плагин "Предпросмотр комментария" (jQuery Comment Preview) подключает к форме комментирования WordPress функцию предпросмотра комментария без перезагрузки страницы. Работает на популярном фреймворке jQuery. Для работы плагина требуется версия WordPress: 2.9 или выше. Пример работы данного плагина вы можете наблюдать на настоящем блоге. Особенности плагина ...
Комментарии (249)
Присоединяю свою благодарность за хороший плагин.
Но почему для новенького на моём блоге плагин не виден?
Т.е. кнопки редактора и предпросмотр, появляются ТОЛЬКО после первого комментирования. Или это так и задумано?
Должен всегда отображаться. Покажите пример.
Вот, только-что зашёл на свой блог в Мозилле, очистил все куки и данные в активном сеансе, и всё — панели нет.
WP 3.0.1 http://videotutor.ru
Проблема от браузера не зависит, везде одно и то же :-(
Причина в том, что при загрузке скрипта, создаваемого плагином (videotutor.ru/?jquery-comment-preview.js), отображается главная страница сайта. Я, к сожалению, не знаю, почему так происходит.
Самое грустное, что стоявший до этого «WP Comment Quicktags Plus» — стал вести себя точно так же. Может глянете мой «comments.php» — ?
Этот файл мне ни о чем не скажет.
Здесь этот плагин стоит в коментариях?
Да, этот.
Здравствуйте, Dimox!
Очень понравился Ваш плагин, спасибо! Установил, все работает. Только возникла одна небольшая проблема. У меня при предпросмотре строки, набранные с отбивкой выглядят как идущие друг за другом. Например: пишу 111 (нажимаю Enter, снова Enter), затем пишу 222. Делаю предпросмотр и вижу строки без отбивки:
111
222
А должны, по идее, должно выглядеть так:
111
222
(при публикации, все нормально, так и выглядит)
У Вас (на вашем сайте) все в порядке. Что нужно/можно нужно сделать, чтобы отбивка отображалась нормально?
К сожалению, не знаю.
Привет Dimox. Решил вот тоже применить твой плагин у себя, установил предпросмотр работает нормально, только вот когда нажимаю на кнопочки вставки HTML-кода он почему-то не вставляется. В чем может быть проблема, как думаеш?
Где можно посмотреть?
Пока нигде, сайт на локалке разрабатываю. Выяснил такой факт, что не вставляется HTML-код только на моей теме, в других все отлично. Даже не знаю, что и делать. Тему менять не хочется, многое в ней под себя переделал уже.
Возможно, что мой скрипт конфликтует с еще каким-то скриптом, который используется в вашем шаблоне.
Dimox, не могли бы вы поделиться кодом подписки на комментарий?
Я использую плагин Subscribe to Comments.
Спасибо.
Как вставить ссылку «RSS комментариев данной статьи» которая у вас под подпиской на комментарий?
Спасибо за апдейт ;)
На здоровье ;)
скриншот
а вот с этим не подскажешь как бороться. Дублирование получается.
На скриншоте панель не от моего плагина.
Прошу прощения не правильно задал вопрос. На скриншоте 2 плагина — Ваш (его качал с офсайта англ. вордпресса) и плагин для разрешения использования в комментариях редактора tiny. Видимо они конфликтуют между собой. Я думал, что с помощью Вашего плагина мне удастся связать их, как например это делает Filosofo Comments Preview. Не хочу его устанавливать так как на одном из старых моих сайтов он блокировал отправку комментариев пользователей. Но видимо это не так просто …
Как называется тот плагин?
jQuery Comment Preview
Ну это мой плагин, о котором статья выше, а я спрашиваю про второй, который не мой.
TinyMCEComments
Прошу прощения , что так долго не отвечал — вчера минут 20 пытался ответить, но страница не загружалась (( С другими сайтами и с интернетом в это время проблем не было …
Плагины не совместимы, поэтому вам придется выбирать один из двух.
Какая-то у меня обрезанная форма для комментариев.Ничего не понимаю.
А не подскажите, как вставить смайлы из qip вместо смайлов плагины?
Можно заменить смайлы WordPress, которые находятся в папке /wp-includes/images/smilies/.
А При обновлении версии ВП, смайлы старые опять не будут заливаться?
Будут.
Вот поставил Ваш плагин и получилось вот такое. Как убрать то поле выделенное красным?
И еще, я взял этот же шаблон и тот же плагин и поставил на другой сайт, и вот как раз там все отлично работает и там нет этой панели.
и еще, подскажите как добавить кнопку tt
Это какой-то другой плагин, который к моему не имеет никакой отношения.
В настройках плагина все написано.
Здравствуйте!
Использовал ваш плагин на блоге, но после обновления WordPress с 2.8 на 3.2 он почему-то перестал работать. Не подскажите в чем может заключаться проблема?
Проверил только что. У меня все работает, как и прежде. Причина может быть в каком-нибудь стороннем плагине или скрипте.
Сидел ломал голову, какой плагин у меня насильно подключает jQuery 1.4.2.
Полез в код “jQuery Comment Preview”, увидел:
//Подключаем jQuery
function jcp_jquery() {
if ( comments_open() && ( is_single() || is_page() ) ) {
wp_deregister_script('jquery');
wp_register_script('jquery', ("http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"), false, '1.4.2');
wp_enqueue_script('jquery');
}
}
add_action('wp_head', 'jcp_jquery', 8);
Дим, ты бы предупредил что ли. Или это я проглядел где-то? :)
Так без него же панель не будет работать.
Какая панель? Все работает. Или ты имеешь ввиду вообще без jQuery? Дык я его не полностью отключить хотел, а пытался понять какой плагин навязывает мне насильно именно 1.4.2 версию.
Смотри.
Дело в том, что у меня в WP jQuery версии 1.6.2 подключен через functions.php кодом:
if( !is_admin()){
wp_deregister_script('jquery');
wp_register_script('jquery', ("http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"), false, '1.6.2');
wp_enqueue_script('jquery');
}
?>
На главной все нормально, а вот на страницах с комментами подключался 1.4.2. Убрал из твоего плагина вышеописанный код и стало нормально подключаться 1.6.2 . Как-то так :)
Я имел в виду, что без вышеуказанного кода панель не будет работать (у тех, у кого jQuery на сайте не подключен).
Кстати, тут вот смотрю в коде:
// Подключаем JavaScript
add_action('wp_head', 'echo_script');
function echo_script() {
if ( comments_open() && ( is_single() || is_page() ) ) {
global $jcp_plugin_path, $options;
if ( (!isset($options['avatar_type']) && !isset($options['preview_html'])) || ($options['avatar_type'] == '1' && preg_match('/{avatar}/', $options['preview_html'])) ) {
echo "\n".'<script src="' . get_bloginfo('wpurl') . '/'.$jcp_plugin_path.'/md5.js" type="text/javascript"></script>';
}
echo "\n".'<script src="' . get_bloginfo('wpurl') . '/?s=jquery-comment-preview.js?' . time() . '" type="text/javascript"></script>';
}
}
Есть строка:
if ( comments_open() && ( is_single() || is_page() ) ) {
Чисто интуитивно думаю, что она задает, что подключать скрипты jquery-comment-preview.js и md5.js надо только на страницах с комментами. Однако у меня они подключаются и на главной и вообще везде. Моя интуиция меня обманула или так и должно быть?
Собственно, так или иначе, у меня тут два вопроса:
1. Что есть md5.js ?
2. Как сделать так, чтобы скрипты подключались только в нужном мне месте (а не в header), только на нужных мне страницах и из моего scripts.js файла (оптимизирую количество запросов в header). Просто убрать код:
// Подключаем JavaScript
add_action('wp_head', 'echo_script');
function echo_script() {
if ( comments_open() && ( is_single() || is_page() ) ) {
global $jcp_plugin_path, $options;
if ( (!isset($options['avatar_type']) && !isset($options['preview_html'])) || ($options['avatar_type'] == '1' && preg_match('/{avatar}/', $options['preview_html'])) ) {
echo "\n".'<script src="' . get_bloginfo('wpurl') . '/'.$jcp_plugin_path.'/md5.js" type="text/javascript"></script>';
}
echo "\n".'<script src="' . get_bloginfo('wpurl') . '/?s=jquery-comment-preview.js?' . time() . '" type="text/javascript"></script>';
}
}
И перенести код скриптов из файлов jquery-comment-preview.js и md5.js в мой scripts.js не получилось (работает bb-редактор, но не работает предпросмотр).
Где можно посмотреть? На каком это сайте?
Это чтобы в предпросмотре показывалась аватарка из сервиса Gravatar.
Удали код, который ты написал, и подключи скрипты в нужном тебе месте (без запихивания в файл scripts.js.
С файлом jquery-comment-preview.js однозначно не стоит этого делать. Админу и просто посетителю отдается немного разное содержимое этого файла.
Вообще на sonikelf.ru, но пока писал ответ и возился с плагином — подключение везде пропало и сейчас отображается только на страницах с комментами :) Либо я что-то напутал, когда смотрел исходники, либо что-то пификсил.
Хм.. Допустим, что мне для админа не критичен предпросмотр. Можно ли как-то в целях оптимизации таки запихать какой-то код jquery-comment-preview.js в свой scripts.js так, чтобы оно работало для пользователей? Или я в конец чего-то не понимаю? ;)
Ну ты же пробовал, сам говоришь, что не работает, значит нельзя.
Ну, мало ли, мне не хватило знаний. Потому и спросил ;)
Спасибо за помощь, Дим.
Хм, кстати. А где физически лежит jquery-comment-preview.js ? А то я его код беру из исходного кода страницы, но подозреваю, что из файла то он будет другой.. А вот файла что-то не вижу.
Что характерно, если дергать код из https://dimox.name/jquery-comment-preview-script-2/ , то предпросмотр работает. А вот если из плагина, то нет :(
Он формируется динамически из файла jquery-comment-preview.php.
Здравствуйте.
1. Подскажите пожалуйста, как сделать, чтобы при нажатии кнопки между тегами уже стояла надпись, например при нажатии code появлялось надпись» (без точек :))
2. Вставляю код для кнопки картинки
<button tag="img" id="ed_img">Картинка[src="" alt=""]</button>
, но при нажатии не появляется java форма для ввода ссылки, побовал Ваш вариант
<button id="ed_img" title="Изображение">img[src="" alt=""]</button>
но пишет
<undefined src="" alt=""></undefined>
В чем может быть проблема или я не так что-то ввожу?
3. У меня стоит плагин Simle Local Avatar (пользователи могут залить себе аватарку в профиле), но в предпросмотре все равно отображаются gravatar. Для отображения SLA я использую код в фале comments.php
Можно ли как-нибудь сделать, чтобы в предпросмотре отображались локальные аватарки а не 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:
Прекрасный плаг, давно его юзаю. Одно непонятно: почему он не сообщает, что есть обновление? :(
У меня до сих пор стояла версия 0.2, сюда забрела совершенно случайно, а тут уже разговор за 0.5 :)
Вот уж не знаю, от меня тут ничего не зависит.
Странно, вообще-то.. А почему другие плаги сообщают, что есть обновление?
Не все, кстати. Я думала, тут дело в том, лежит плаг на wordpress.org или не лежит..
Да, от этого и зависит. Но мой плагин там есть, поэтому действительно странно.