WordPress как на ладони
wordpress jino

Kama WP Smiles

И снова здравствуйте! hi

Не помню точно unknw что натолкнуло меня на мысль установить смайлы на этот сайт. Вроде знакомый устроил мне разбор смайлов в мессенджере «QIP infium», которым я пользуюсь уже не первый год victory и я загорелся желанием прикрутить смайлики сюда.

Немного поискав search подходящий плагин для WordPress, наткнулся на этот, решил использовать его, но не тут-то было negative - я хотел другой вывод, и хотел упростить проверку на замену символов на смайлики. А еще, мне не нужно было так много смайликов no . Все свои желания я конечно мог реализовать, отредактировав вышеупомянутый плагин, но я как-то, почти случайно, начал писать свой код, который в итоге превратился в плагин, вроде довольно удачный  bravo

О плагине смайликов для WordPress

Что делает плагин:

  • заменяет стандартные смайлики WordPress, на смайлики из QIP;

  • добавляет список смайликов к полю комментирования. Какие смайлики попадут в список указывается в настройках;

  • добавляет смайлики в админ-панель, где можно легко их вставлять при ответе на комментарии или написании поста;

  • упрощает поиск и замену кодов смайликов в тексте.

Скачать

Kama Wp Smile
Скачать с каталога WordPress. Последняя версия.
Скачано: 366, размер: 306.2 KB, дата: 3.5 года назад

.

Настройки Kama WP Smiles

Расскажу немного о настройках secret

Ручная вставка блока смайликов в форму комментирования

Плагин автоматически добавляет смайлики к форме комментариев (textarea). Однако может получиться так, что нормально встроить список у плагина не получиться. В таком случае, вы можете вставить блок смайликов вручную, в любое место шаблона. Для этого оставьте поле "Авто-вставка смайлов" в настройках пустым, так вы отключите авто-вставку, и при помощи php кода вставьте блок в нужное место шаблона (обычно где-то в файле comments.php):

<?php echo kws_get_smiles_html( 'id_формы_комментирования' ); ?>

Этот код выведет блок смайликов.

HTML теги исключения

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

<code>улыбочка :)</code>.

Теги нужно указывать через запятую.

Специальные обозначения смайликов (смайлики исключения)

По умолчанию смайлики определяются в тексте по коду (:название_файла_смайлика:), но есть исключения. Например смайлик  smile обозначается как  :-) или :) или =), а его родной код  (:smile:). По умолчанию 3 таких исключения:  :) :( :D. Такое ограничение связано с небольшой оптипизацией... Такие исключения можно настроить в плагине.

Редактируем внешний вид

Если вас не устраивает как выглядит список смайликов, то его можно отредактировать, при условии что вы знаете css, для этого нужно изменить CSS правила в поле "CSS стили". Чтобы стили не хранились в настройках, стили можно скопировать в свой файл стилей, при этом удалить их из настроек.

Установка своего комплекта смайлов

Если вы не увидите смайликов, которые бы вы хотели иметь у себя на блоге, не нужно расстраиваться don-t_mention. Вы легко можете дополнить/заменить смайлы на свои yu .

Чтобы дополнить список, всего-то нужно создать рядом с папкой плагина папку kama-wp-smile-packs и добавить в нее свой комплект смайликов-картинок. Т.е. в итоге у вас должна получиться такая папка с картинками смайликов: /wp-content/plugins/kama-wp-smile-packs/mypack/*.gif. После создания такой папки, нужно зайти в настройки и выбрать новый появившейся пакет смайликов.

В тексте записи будет использоваться конструкция (:название_файла:). Например, если вы добавите картинку emotion.gif в тексте этот смайл будет вставляться как (:emotion:).

В названии файлов допускаются только нижний регистр латинских букв a-z, цифры 0-9, знаки - и _. Если файл имеет какие то другие знаки, то он не будет работать.

Фильтрация - удаление кода смайликов из текста

Если нужно где-то отфильтровать текст (не показывать код смайликов), то примените такой фильтр:

$text = "Пробный текст (:good:)";
$text = preg_replace('/\(:[a-z0-9-_]{0,15}:\)/', '', $text );
echo $text;

// вернет: Пробный текст

Как встроить плагин в другие поля, например в BbPress, Quick Chat

Плагин по умолчанию работает только для комментариев и записей. Если нужно «прикрутить» его куда-то еще, то вам пригодятся следующие функции и немного знаний css:

  • kws_get_smiles_html( $textarea_id ) - выводит блок смайликов для textarea
  • kws_convert_smiles( $content ) - обрабатывает контент на выходе, чтобы сделать из кодов смайлов картинки

--

В случае внезапных проблем, глюков, багов и «ещечего» или если просто появится желание написать что-то примерно такое - good, пишите в комментарии  mail

И не забудем сказать огромное спасибо автору стиля колобок за такие прикольные смайлики.

Спасибо за внимание thank_you

Kama WP Smiles 235 комментариев
Полезные 5 Вопросы 2 Все
  • Анатолий cайт: escape-pl.com/obywatelstwo/sposobyi-pere... @

    Добрый день!

    Столкнулся со следующей проблемой. На каждой странице, где стоит смайл wink выскакивает ошибка:

    Warning: in_array() expects parameter 2 to be array, null given in /home/lenin564/domains/escape-pl.com/public_html/wp-content/plugins/kama-wp-smile/class.Kama_WP_Smiles.php on line 150

    Сам смайл не отображается, хотя доступен в окне выбора смайлов.

    Прошу Вашей помощи или совета по решению данной проблемы.

    Пример в адресе URL

  • Михаил cайт: trapeznaya.ucoz.ru @

    Ошибочка smile

    Today
    18:31:31 GMT+0300
    in_array() expects parameter 2 to be array, null given
    Type: PHP Warning
    Line: 150
    File: /wp-content/plugins/kama-wp-smile/class.Kama_WP_Smiles.php
    • Kama4488

      Выпустил новый релиз 1.9.5 чтобы не было больше таких комментов, а то это уже не первый и даже не второй... wacko

  • Vasil

    Прошу прощения, а можно для не особо умных расписать более подробно как подключить Ваш плагин к Quick Chat? Заранее благодарен!

  • Lorem cайт: thuthuatios.com

    It is no compatible with wpDiscuz plugin sad
    WpDiscuz uses a lot of field IDs in the comment section.

    =====================

    Он несовместим с плагином wpDiscuz sad
    WpDiscuz использует много идентификаторов полей в разделе комментариев.

    Ответить2 месяца назад #
  • Otshelnik-Fm180 cайт: across-ocean.otshelnik-fm.ru @

    Тимур - сделай при удалении плагина чтобы он use_smilies - возвращал назад. Я столкнулся с одной неприятностью когда активировал твой плагин. Я облазил в нем все настройки, удалил потом и сам плагин - но смайлы у меня так и не вернулись. Оказывается (случайно вспомнил что в вп есть опция) опция в основных настройках вордпресса была снята.
    Я скачал твой плагин и поискал вхождение https://yadi.sk/i/3LPnx1ZM3KrT6P - как видим отключается опция, но назад не возвращается.
    У меня эта опция в вордпрессе повлияла на смайлы в чате и лс от плагина WP-Recall. Я думаю и другие плагины могут на нее опираться - не одними комментариями на сайте же смайлы ограничиваются.
    Сейчас сделаю попытку №2 и вновь попробую твой плагин - теперь то я знаю что ВП настройка вырубается

    Ответить2 месяца назад #
    • Kama4488

      Убрал вообще обработку этой опции. Теперь просто при включенном плагине через фильтры её влияние отключается... thank_you Версия 1.9.7

      Ответить2 месяца назад #
  • Анатолий cайт: escape-pl.com/obywatelstwo/sposobyi-pere... @

    Добрый день. После восстановления сайта в начале каждого поста выскакивает следующий код:

    Warning: Invalid argument supplied for foreach() in /home/lenin564/domains/escape-pl.com/public_html/wp-content/plugins/kama-wp-smile/class.Kama_Wp_Smiles.php on line 56

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

    Спасибо!

    Ответить2 месяца назад #
    • Kama4488

      Похоже что-то с настройками плагина. Убедись что они есть - зайди на страницу настроек и обнови их.

      Ответить2 месяца назад #
      • Анатолий cайт: escape-pl.com/obywatelstwo/sposobyi-pere... @

        Спасибо!

        Как не странно, проблема решилась сама собой (еще до сегодняшнего обновления). Код просто пропал с превью записей.

        Ответить2 месяца назад #
  • Михаил @

    Здравствуй Тимур!
    Такая проблемка - в мобильном браузере при клике на смайлик в поле попадает смайлик, но окошко со смайликами не открывается. Только у меня так или нет?

    Ответитьмесяц назад #
    • Д.С. @

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

      1
      Ответить25 дней назад #
  • V An. cайт: toisong.com

    Hi kama,
    Could you guide us config this plugin with WPdiscuz comment? Please make a video!!!
    Thanks you!

    Ответить27 дней назад #

Здравствуйте, !

Ваш комментарий