Kama WP Smiles
И снова здравствуйте! 
Не помню точно
что натолкнуло меня на мысль установить смайлы на этот сайт. Вроде знакомый устроил мне разбор смайлов в мессенджере «QIP infium», которым я пользуюсь уже не первый год
и я загорелся желанием прикрутить смайлики сюда.
Немного поискав
нашел несколько, попробовал, но не тут-то было
— я хотел другой вывод, и хотел упростить проверку на замену символов на смайлики. А еще, мне не нужно было так много смайликов
. Все свои желания я конечно мог реализовать, отредактировав вышеупомянутый плагин, но я как-то, почти случайно, начал писать свой код, который в итоге превратился в плагин, вроде довольно удачный 
О плагине смайликов для WordPress
Что делает плагин:
- заменяет стандартные смайлики WordPress, на смайлики из QIP.
- добавляет список смайликов к полю комментирования. Какие смайлики попадут в список указывается в настройках.
- добавляет смайлики в админ-панель, где можно легко их вставлять при ответе на комментарии или написании поста.
- упрощает поиск и замену кодов смайликов в тексте.
Настройки Kama WP Smiles
Расскажу немного о настройках 
Ручная вставка блока смайликов в форму комментирования
Плагин автоматически добавляет смайлики к форме комментариев (textarea). Однако может получиться так, что нормально встроить список у плагина не получиться. В таком случае, вы можете вставить блок смайликов вручную, в любое место шаблона. Для этого оставьте поле "Авто-вставка смайлов" в настройках пустым, так вы отключите авто-вставку, и при помощи php кода вставьте блок в нужное место шаблона (обычно где-то в файле comments.php):
<?php echo kws_get_smiles_html( 'id_формы_комментирования' ); ?>
Этот код выведет блок смайликов.
HTML теги исключения
В этой настройке можно указать HTML теги, текст в которых не будет обрабатывался плагином. Например, если там указать code, то следующий код не будет обработан плагином:
<code>улыбочка :)</code>.
Теги нужно указывать через запятую.
Специальные обозначения смайликов (смайлики исключения)
По умолчанию смайлики определяются в тексте по коду (:название_файла_смайлика:), но есть исключения. Например смайлик
обозначается как
или
или
, а его родной код
. По умолчанию 3 таких исключения:
. Такое ограничение связано с небольшой оптипизацией... Такие исключения можно настроить в плагине.
Редактируем внешний вид
Если вас не устраивает как выглядит список смайликов, то его можно отредактировать, при условии что вы знаете css, для этого нужно изменить CSS правила в поле "CSS стили". Чтобы стили не хранились в настройках, стили можно скопировать в свой файл стилей, при этом удалить их из настроек.
Установка своего комплекта смайлов
Если вы не увидите смайликов, которые бы вы хотели иметь у себя на блоге, не нужно расстраиваться
. Вы легко можете дополнить/заменить смайлы на свои
.
Чтобы дополнить список, всего-то нужно создать рядом с папкой плагина папку 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:
// выводит блок смайликов для textarea kws_get_smiles_html( $textarea_id );
// обрабатывает контент на выходе, чтобы сделать из кодов смайлов картинки $content = kws_convert_smiles( $content );
--
В случае внезапных проблем, глюков, багов и «ещечего» или если просто появится желание написать что-то примерно такое -
, пишите в комментарии 
И не забудем сказать огромное спасибо автору стиля колобок за такие прикольные смайлики.
Спасибо за внимание 



