Форматирование комментариев
Форматирование комментариев

Форматирование комментариев WordPress, часть вторая

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

11-го мая, а именно тогда и была опубликована первая часть, я всё ещё питал надежду, что будут написаны либо новые плагины взамен потерявших работоспособность после обновления движка WordPress, либо обновятся старые.

Данная статья устарела. Более оптимальное решение - плагин визуального редактора комментариев. Содержание статьи удалено, как не актуальное.

 

Смотрите также

Критика блога Натальи Акуловой

Критика блога Натальи Акуловой

Впервые пишу критический обзор чужого блога. Всегда считал, что подобная критика - это как соринку …

С Новым годом!

С Новым годом!

Друзья! Поздравляю всех с Новым годом! Желаю крепкого здоровья, любви, семейного уюта и благополучия, новых …

69 комментариев

  1. Действительно, дорогу осилит идущий))) Когда нужно всегда найдется способ ,кстати вполне приемлемый, не отнимет много сил и времени

    • Как верно подмечено:

      дорогу осилит идущий

      Есть такое выражение:

      Желание – это множество возможностей, а нежелание – множество причин!

       

      Да, всё оказалось в итоге намного легче, чем предполагалось и этот способ, я думаю, на самом деле приемлем для многих.

  2. Вот это да, столько работы проделано – и не зря! Сейчас буду баловаться редактором А ведь все просто до гениальности! Действительно – кто ищет – тот всегда найдет! Эх, обязательно себе такое прикручу! Спасибо!!!

    • Аааа – картинка не появилась моя, что в предыдущий комментарий вставляла…И текст цветом выделяла – тоже нет.. жаль, может Вы почините, а то хочется все и сразу – все возможности. Сейчас проверю остальные:

      это список
      это список

      проверка связи
      проверка связи

      таблица
      таблица

      таблица
      таблица

      • Нет, и это не сработало, к сожалению, но ничего – будем ждать – идея-то отличнейшая

        • Смайлики тоже обиделись и ушли 🙁

          • Анжелика, странно, что у Вас ничего не получилось…

            1. это список
            2. это список

            Единственное объяснение, которое могу предположить – это то, что Вы писали комментарий в момент, когда я менял смайлики и вносил корректировки в код… wonder

            Попробуйте пожалуйста еще раз, обновите эту страницу Ctrl+F5, возможно она у Вас закеширована просто…

            Все-же работает, как часы… good

          • В предыдущем комменте картинки вставлены в таблицу… Не пойму что со списками… Надо еще css посмотреть… наверное…

            1. первый
            2. второй
            • первывй
            • второй
  3. Со списками понятно – стиль оформления блока комментариев перехватывает стиль списка в самом комментарии. Завтра подправлю… А в остальном все нормально работает.

    Может еще кто попробует?

    sosrtfm

    • Пробую вставить картинку 

      список
      список

      нумерация
      нумерация

      • Да, надо еще кому-нибудь попробовать… может это только у меня 🙁

        • Анжелика, а как Вы вставляете, например, картинку? Вот такое окно появляется у Вас?

          И еще, какой формат картинки? Хотя вроде как любые показывает… А браузер какой? А не отключены ли у Вас JavaScript-ы? Я уже даже не знаю, что подумать…

          • Да, ссылку туда вставляю, формат обычный, браузер Яндекс, вроде все должно бы работать и когда редактирую – все красиво, но как только страница обновляется – сюрприз – все пропадает…

  4.   Вставила картинку, надеюсь, получилось.
    Если все работает, то здорово! Вы все-таки нашли, что хотели!
    Поздравляю!!!

  5. Интересное решение, сейчас попробуем побаловаться . Ну вот цвет при написании работает , сейчас проверим картинку  И картинка пока присутствует, ну чтож жму отправить . Интересно что выйдет?

  6. Ну вот и облом. Цвета нет и картинки тоже. Александр чето не то.

  7. Тоже пробую что-нибудь написать… Картинка…

    Попробуем еще и цветом
     
     

    И даже так
    Это на самом деле таблица

     

  8. Что то не так работает

    1
    2

    3
    4

  9. А вот я тоже попробую

  10. М-дааа… радость была преждевременной… Редактор работает только для админа, для всех остальных посетителей скрипты по соображениям безопасности автоматом отключаются… Поэтому и делали специальные плагины, которые этот момент умели обходить…

    На сайте разработчиков ничего по этому поводу внятно не говорится. Сказано только, что если предоставить для всех, то это вредит безопасности, так-как через эти скрипты можно навредить сайту.

    Вот же засада… Эх… eyesthink

    Где там моя большая лопата? Пойду дальше копать… rtfm

    А как всё было хорошо…

  11. М-дааа… радость была преждевременной… Редактор работает только для админа, для всех остальных посетителей скрипты по соображениям безопасности автоматом отключаются… Поэтому и делали специальные плагины, которые этот момент умели обходить…

    Оставлены только рабочие кнопки?
    Вот ссылка… на возможное решение проблемы…

    • Спасибо, Максим. Я уже пробовал тот метод, у меня он почему-то вообще не работает. Даже редактор не отображает…

      Поэтому пока оставил свой вариант и да, убрал все, что не работало у посетителей. Оставил только те кнопки, которые работают у всех. В принципе, и этого достаточно, но мне хотелось еще как минимум вставку изображений и таблицу… Ах да, смайлики еще…

      Поиск решения прордолжается…

  12. Всё работает. yahoo

    Кроме бордера у таблиц. Но он и в статьях под админом не работает…

    Остальное всё – таблицы, изображения, смайлики, ссылки… Всем можно пользоваться.

    Чуть позже напишу дополнение к статье.

    rtfm

     

  13. Прочла статью. В голове – каша. Но очень нужное дело Вы описываете. Я просто не очень дружу с кодами и когда нужно в них влазить, мне нехорошо становится. Но потихоньку осваиваю. Думаю, что со временем сделаю такие комментарии и у себя на блоге. Спасибо за информацию!
    p.s. К стати, не получилось здесь вставить фотоpitchup
    Хотела поднять Вашим пользователям настроение. 

    • Спасибо, Юлия! Я стараюсь давать рабочий пример кода, его просто взять и скопировать в свой файл. Я думаю, разберетесь, если что – подскажу. На самом деле не так страшно, как может показаться…

      И размерами можно рулить при вставке…

      Фото вроде должно работать. Что именно не получилось?

       

    • Странно, что у Вас не получилось. Я под другой статьей вставлял, сейчас еще попробую…

      Вставляю кнопкой, открывается окно вставки изображения… Вроде-бы все просто…

      Вот сейчас сохраню и посмотрим результат…

  14. Вот интересно… Еще раз пробую…
    Получается просто прямоугольник.
    Что нужно вписать в поле Источник?
     
     

    • Юлия, я посмотрел адрес Вашей картинки… Вы же её со своего компьютера вставляете!!! wonder

      Картинка должна быть в интернете! Сюда Вы вставляете просто ссылку на неё.

      Я обычно гружу картинки на радикал, а потом вставляю ссылку. Просто слишком накладно было-бы давать возможность всем загружать графику на мой хостинг. Никакого месте не хватит… laugh

  15. Так так, говорят все заработало, сейчас проверим

    Если что-то очень хотеть, то Вселенная будет способствовать этому!good

    таблица

    12
    34
    • Все отлично работаетgood, кроме таблицы, но она мало кому понадобится (хотя может быть я сама что-то не так сделала с таблицей..).
      Спасибо за труды, Александр, попробую у себя такое сделатьyes3yahoo

      • Спасибо, Анжелика! Нет большей радости, чем одобрение тех людей, для кого ты собственно и старался… drink

        Таблица тоже работает, только рамка невидимая… Если бы Вы перечитали статью, она исправленная и дополненная, то там я об этом говорю…

        На самом деле, даже в Вашей вставке, таблица, как видите, есть! Строки, столбцы, ячейки – все присутствует. Рамки нет. Но это и не страшно, я думаю. Уже есть идея, как это решить, но тогда рамка будет независимо от того, выставите Вы её или нет… 

        Как думаете, так будет лучше? Или оставить как есть?

        • Александр, я думаю таблицу можно оставить и так, действительно удобно вставлять картинку а в соседнюю ячейку описание к ней. Рамка тогда будет мешать. А составлять настоящие таблицы вряд ли кто будет.

          Надо стараться все делать хорошо: плохо оно само получится…@ Андрей Миронов

           
          Все отличненько, спасибо, буду у себя такое делать good

          • …буду у себя такое делать…

            Анжелика, очень интересно будет комментировать с таким интерфейсом.

            Возможно и статью напишите о повышении поведенческого фактора таким способом… smile

            Если встретятся какие-либо трудности – скажите, с удовольствием помогу.

  16. Ну что ж, пробую второй раз.
      Вставила картинку
    А насчет таблицы мне кажется, что это не принципиально. Вообще, наверно, редко кто воспользуется этой возможностью.

  17. Ну что, попытка номер 2 blush

    • Андрей, спасибо.

      В блог встраивается лекго, писать комментарии с таким интерфейсом гораздо удобнее, да и вообще приятнее и как то по современному, что-ли…

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

      Так, что настраивайте и у себя визуальный редактор комментариев.

      • Да, выглядит классно,good но у меня же тема блога, повернутая на всю голову. eyesПросто боюсь если вставлю то что Вы говорите в файл комментс, то работать не будет. Все настройки моей темы находятся в файле функцион.rtfm Ну а с кодами я особо не дружу. Хотя идея интересная, может быть и копну, но пока сомневаюсь. drinkВот как то так.

        • А тут как раз тот случай, когда в принципе от темы ничего и не зависит. Всё ориентировано на стандартные коды самого движка WordPress. А они везде одинаковы.

           уверенсомневаюсь
          есть желаниеделаюделаю
          нет желанияделаюне делаю

          Так что, если есть желание, то смело можете делать – всё должно заработать. Если что, всегда готов помочь.

  18. Чего-то не получилось у меня, архив скачала, в корень залила, в соммент код вставила, а в функцию не знаю куда вставлять, в разные места пробовала – либо не работает, либо сайт слетает, у меня в конце не закрывающий тег ?>, а }
     

    Александр, без Вашей помощи не обойтись, вот здесь файл функции
     

    • Анжелика, блок PHP определяется наличием открывающего и закрывающего тегов

      <?php
      // здесь какой-то код...
      ?>

      Отсутствие закрывающего тега уже говорит о какой-то неправильной (возможно предыдущей) корректировке. Он просто не может не быть. А то, что открывается и закрывается скобками – это границы каких-либо функций в теле PHP-блока.
      Я Вам на почту отправил файл… Ваш, но уже с тегом и моим вставленным кодом. Свой на всякий случай сохраните в резерве, а этот переименуйте в functions.php и залейте на блог.
      Все будет нормально.

  19. Очень понравился внешний вид комментов, которые приходят на почту!

  20. Большое спасибо за статью, очень помогла. Но у меня на сайте возникла проблема. Если нажать на “Ответить”, то блокируется текстовое поле и ничего нельзя написать. Проверил у вас, таковой проблемы нет. Как вы обошли эту проблему?

    • У меня такой проблемы не возникало. Думаю стоит посмотреть два момента:

      1. Вы код вставляли именно там, где я писал в статье? В Вашем случае – это перед строкой

      <textarea id="comment" style="width: 379px; height: 45px;" cols="45" name="comment" rows="8"></textarea>

      2. Не остались ли другие плагины форматирования комментариев, возможно они вступают в конфликт с этим скриптом. если есть, то отключите их… У Вас ответить отображается кнопкой… Это тоже плагин какой-то? По умолчанию вроде как ссылка просто должна быть. Может и этот плагин отключить…

      • Здравствуйте, Александр!
        Код я вставил в файле comments.php перед строчкой <?php comment_form(); ?>, т.к. текстовое поле у меня в теме не прописано (оно находится в wp-includescomment-template.php). Затем вот от сюда добавил код для исправления блокирования текстового окна при нажатии на кнопку “Ответить”. Теперь все нормально, при нажатии на “Ответить”. Но… Если теперь нажать “отменить ответ”, то окно все равно блокируется sad

        • Владимир, Тот код, ссылку на который Вы привели, вообще-то предназначен для подключения к коментариям встроенного редактора TinyMCE… Я изначально пытался его подключить – он вообще у меня не заработал… Поэтому пришлось изобретать свой велосипед.

          Кнопки Отменить ответ по умолчанию нет, она добавляется каким-то плагином. Именно этот плагин я не устанавливал, но ставил подобный для цитирования – типа в каждом комменте должна появится ссылочка цитировать… У меня это тоже не сработало. Видимо скрипт, который предложил я и такие плагины где-то перехватывают друг у друга функционал и что-то не работает.

          Поэтому приходится выбирать – или то, или это. Либо копаться в коде плагина и что-то там менять.

      • Наверное Вы не совсем меня моняли. Но на всякий пожарный я проверил на чистом wordpress, проблема аналогичная. А по ссылке которой я вам дал статья про то как интегрировать tinymce в wordpress и там описоно решение проблемы при нажатии на “Ответить”:

        <?php// wp_editor doesn't work when clicking reply. Here is the fix.add_action( 'wp_enqueue_scripts', '__THEME_PREFIX__scripts' );
        function __THEME_PREFIX__scripts() {&nbsp;&nbsp;&nbsp; wp_enqueue_script('jquery');}
        add_filter( 'comment_reply_link', '__THEME_PREFIX__comment_reply_link' );
        function __THEME_PREFIX__comment_reply_link($link) {&nbsp;&nbsp;&nbsp; 
        return str_replace( 'onclick=', 'data-onclick=', $link );}
        add_action( 'wp_head', '__THEME_PREFIX__wp_head' );
        function __THEME_PREFIX__wp_head() {?&gt;&lt;script type="text/javascript"&gt;&nbsp; jQuery(function($){&nbsp;&nbsp;&nbsp; $('.comment-reply-link').click(function(e){&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; e.preventDefault();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var args = $(this).data('onclick');&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; args = args.replace(/.*(|)/gi, '').replace(/"|s+/g, '');&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; args = args.split(',');&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tinymce.EditorManager.execCommand('mceRemoveEditor', true, 'comment');&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; addComment.moveForm.apply( addComment, args );&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tinymce.EditorManager.execCommand('mceAddEditor', true, 'comment');&nbsp;&nbsp;&nbsp; });&nbsp; });&lt;/script&gt;&lt;?php } ?>

        все работает когда вставляешь данный код, в данном каде они исправляют проблему с “comment_reply_link“. Правда если нажать на “Отменить ответ”, то проблема опять возникает. Как я понял нужно писать аналогичный хук для “cancel_comment_reply_link“, вот с этим у меня проблематично. Пока искал в поисковиках, наткнулся на аналогичные вопросы но без ответов:
        Вот и вот.
        Кстати еще пока искал встретил и решение “недавно” вашей проблемы, про вырезания тегов: вот. Вот тут он помоему пишет как справиться с моей проблемой только я опять туплю, может гляните?

        • Вот тут он помоему пишет как справиться с моей проблемой только я опять туплю, может гляните?

          Посмотрел… Что-то там все так сложно. Вроде в принципе-то и понятно, но столько телодвижений и кода! Пока смотрел код, вроде думал, что понимаю о чем речь, но потом увидел там-же практическую реализацию… Это-же прсто редактор тегов у него… Я-то полагал, что он про Wysiwyg пишет… Как у меня сделано…

          Я делал все в точности так, как описывал в статье. Проблем с ответами не было, а отмена у меня не предусмотрена. Про вырезание тегов я тоже решил, для чего общался с разработчиками WordPress, но метод тот-же, что и Вы указали по ссылке.

          Владимир, попробуйте полностью использовать способ, предложенный мной… Ведь работает-же, причем именно как Wysiwyg редактор комментариев.

          • Да вроде сделал все как у вас описано sad. Ладно спасибо большое за все, буду разбираться. Кстати по поводу:

            а отмена у меня не предусмотрена.

            Вот глянте http://prntscr.com/3ny5aq

        • Я действительно Вас не так понял. Думал, что речь идет о функционале, когда комментатор уже отправил свой комментарий и уже потом, в течении какого-то времени, имеет возможность его откорректировать или удалить… Встречал такие плагины…

          Посмотрел скрин и понял о чем Вы… С этим я вообще ничего не делал. Как работало изначально, так и работает…

          Наверное все-же дело в Вашем шаблоне, либо какой-то плагин для комментов “гасит” эту возможность…

  21. Ведь работает-же, причем именно как Wysiwyg редактор комментариев
    .

    О! Я смотрю редактор еще получил дополнительные “навороты”?

    • Заработали списки
    • Появилось выделение шрифта цветом
    • Появилось выделение шрифта фоном

    Стоящая штука! good


  22. Все пробуют картинки вставлять, я тоже решила попробовать, вроде получилось

  23. Ужас, Александр, человеку, который все это понимает, нужно заниматься разработкой или версткой. Там настоящие деньги. Мне бы такие мозги, уж я наворотила бы! Только вот не улавливаю я, что к чему blush

    • …человеку, который все это понимает, нужно заниматься разработкой или версткой

      Надежда, а я как раз и работаю программистом. laugh

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

      А web-программирование затрагиваю лишь поверхностно, поскольку когда-то давно надо было делать корпоративный сайт-магазин… С тех пор потихоньку по мере необходимости самостоятельно изучал то то, то это… Сайты тоже веду…

      Так, что если что – обращайтесь, постараюсь помочь. В частности вот такой редактор поставить… good

      • Александр, благодарю! Возьму на заметку. Но вот редактор такой не стану ставить, считаю это излишеством: блогу пользы от этого не будет. Тем более если станут выделять жирным и цветами. так и фильтр схлопотать можно. У меня как раз это было одной из причин: при пользовании визуальным редактором получается огромное количество ошибок html

        • Но вот редактор такой не стану ставить, считаю это излишеством: блогу пользы от этого не будет. Тем более если станут выделять жирным и цветами. так и фильтр схлопотать можно.

          Ох как всё запущено…

          Ну… хозяин – барин!

  24. Отличнейший редактор! Пока поставил по первому варианту. Со вторым появились некоторые трудности. Но ничего думаю может и разберусь. А так все прикольно. По такому случаю приглашаю в гости, угощу чем-то вкусненьким, сюрприз!

  25. Александр у меня оказывается появилась проблемка и при первом простом варианте. Когда я хотел ответить на очередной коммент. Нажал “Ответить” и после этого курсор просто ищез. И не возможно ничего писать. К сожаленью пришлось код удалить.

    • Да, Олег, такая проблема есть… Я пока не знаю как её решить. Это из-за древовидных комментариев. В некоторых шаблонах, созданных еще до 3-й линейки вордпресс, когда древовидные комментарии ещё не были встроены по умолчанию, внедрен код их реализующий. Обычно он размещается в файле header.php Вашей темы и выглядит примерно так:

      if (is_singular() AND comments_open() AND (get_option('thread_comments') == 1)) 
      wp_enqueue_script('comment-reply');

      Вот эту часть кода надо удалить или закомментировать. Но обязательно должен остаться код, идущий за ним, примерно такой:

      echo get_theme_option("head") . "n";  wp_head();

      После этих манипуляций проблема уйдёт, но ответ не будет подскакивать к тому комменту, на который отвечаешь, а будет всегда внизу…. Вот как у меня…
      Везде, где устанавливал этот визуальный редактор делал именно такой трюк. Пока более нормального решения не нашёл. Если всё-же решитесь повторить такой трюк и что-то не получится, то обращайтесь, постараюсь помочь…
      И ещё… в обязательном порядке перед любыми изменениями сделайте копии изменяемых файлов, чтобы можно было без труда всё восстановить, если вдруг что-то пойдет не так.

  26. Спасибо большое за статьи, как раз то, что искала
    Осталось придумать, как , собственно оформить само окошко ввода

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

 Ясогласен с политикой конфиденциальности сайта и пользовательским соглашением