Добавляем смайлики на WordPress блог без плагинов
Привет, друзья. Как вы поняли из названия статьи, сегодня я расскажу о том, как добавить возможность вставлять смайлики в комментарии на WordPress блогах без плагинов.
Долгое время на моем блоге не было смайликов, так как я просто ими никогда не пользовался. Со временем я поймал себя на мысли, что смайлики добавляют какой-то живости и эмоциональности в общении на блоге. Стандартные смайлики, которые вшиты в движок, меня не устроили, так как они слишком мелкие и невыразительные. Я стал искать подходящее решение в виде специального плагина, но везде меня ждало только разочарование — либо плагин был напичкан лишними функциями, либо работал криво 🙂 .
В конце концов я решил воспользоваться стандартной возможностью WordPress, изменив сами иконки смайликов на свои.
Итак, если вы хотите, чтобы в комментарии на вашем блоге можно было вставлять любые смайлики, и не хотите пользоваться плагинами, следуйте дальнейшим инструкциям.
Для начала вам нужно скачать понравившиеся смайлики на замену стандартным. В сети есть смайлики на любой вкус, но мне, из всего изобилия нравятся стандартные колобки, которые сейчас и установлены на моем блоге. Ниже вы можете скачать их:
Колобки мини (скачать)
Колобки (скачать)
Итак, после того, как вы скачали новые иконки, необходимо заменить ими стандартные. Стандартные смайлики находятся в папке wp-includes/images/smilies/. Следите только за тем, чтобы имена старых иконок совпадали с именами новых, а также совпадало их содержание.
Теперь, после того как вы заменили иконки, нужно добавить возможность их вставки в комментарии. В принципе, если в настройках блога включена такая возможность, смайлики уже должны преобразовываться в картинки, если вы наберете их символами.
Для того, чтобы вывести список смайликов, есть специальная функция:
<script type="text/javascript"> function addsmile($smile){ document.getElementById('comment').value=document.getElementById('comment').value+' '+$smile+' '; } </script> <?php global $wpsmiliestrans; $dm_showsmiles = ''; $dm_smiled = array(); foreach ($wpsmiliestrans as $tag => $dm_smile) { if (!in_array($dm_smile,$dm_smiled)) { $dm_smiled[] = $dm_smile; $tag = str_replace(' ', '', $tag); $dm_showsmiles .= '<img src="'.get_bloginfo('wpurl').'/wp-includes/images/smilies/'.$dm_smile.'" alt="'.$tag.'" onclick="addsmile(\''.$tag.'\');"/> '; } } echo '<div style="width:100%; margin-left:0px; margin-right:0px;">'.$dm_showsmiles.'</div>'; ?>
Смайлики лучше всего выводить над полем ввода комментария — так удобнее для посетителя. Код с формой находится в файле comments.php вашей темы оформления. За вывод поля комментирования отвечает тэг ‹textarea›
<textarea name="comment" id="comment" cols="5" rows="10" tabindex="4"></textarea>
Вставьте код для вывода смайликов перед этой текстовой формой. После этих действий над полем комментария должна появиться вот такая панель со смайликами:
Теперь давайте разберемся, как сделать, чтобы выводились только определенные, нужные нам иконки.
Список выводимых смайлов можно найти в файле wp-includes/functions.php . Найти этот список можно в районе 2880-й строки, а выглядит он вот так:
':)' => 'icon_smile.gif', ':smile:' => 'icon_smile.gif', ':-)' => 'icon_smile.gif', ':grin:' => 'icon_smile.gif', ':D' => 'icon_smile.gif', ':-D' => 'icon_smile.gif', ':sad:' => 'icon_sad.gif', ':-(' => 'icon_sad.gif', ':(' => 'icon_sad.gif', ':shock:' => 'icon_eek.gif', '8-O' => 'icon_eek.gif', '8O' => 'icon_eek.gif', ':eek:' => 'icon_eek.gif', ':-o' => 'icon_eek.gif', ':o' => 'icon_eek.gif', ';-)' => 'icon_wink.gif', ':wink:' => 'icon_wink.gif', ';)' => 'icon_wink.gif', ':cool:' => 'icon_cool.gif', '8-)' => 'icon_cool.gif', '8)' => 'icon_cool.gif', ':razz:' => 'icon_razz.gif', ':-P' => 'icon_razz.gif', ':P' => 'icon_razz.gif', ':oops:' => 'icon_redface.gif', ':?:' => 'icon_question.gif', ':neutral:' => 'icon_neutral.gif', ':-|' => 'icon_neutral.gif', ':|' => 'icon_neutral.gif', ':mrgreen:' => 'icon_mrgreen.gif', ':mad:' => 'icon_mad.gif', ':-x' => 'icon_mad.gif', ':x' => 'icon_mad.gif', // ':roll:' => 'icon_rolleyes.gif', // ':cry:' => 'icon_cry.gif', // ':lol:' => 'icon_lol.gif', // ':!:' => 'icon_exclaim.gif', //':twisted:' => 'icon_twisted.gif', // ':???:' => 'icon_confused.gif', // ':-?' => 'icon_confused.gif', // ':?' => 'icon_confused.gif', // ':idea:' => 'icon_idea.gif', // ':arrow:' => 'icon_arrow.gif', // ':evil:' => 'icon_evil.gif',
Как видите, те смайлики, которые мне не нужны (они находятся внизу), я просто отключил, закомментировав строки с ними. Все очень просто 🙂 .
Вот так очень просто, не используя плагины, которые нагружают сервер, можно добавить смайлики на блог.
Только надо будет не забывать обновлять свои смайлы после обновления самого WordPress 😉
Хорошее замечание, надо будет запомнить, а то смайлики вордпресса мне не нравятся, я их уже давно заменила на другие. И они действительно добавляют живости
😉 хороший способ)))
А главное, что ускоряет работу сайта 😉
Смайлики, это конечно весело и интересно. Но сильно на них не стоит заморачиваться. Нужно больше времени уделять продвижению.
Я никогда не пользовался плагинов, как то один раз ставил смайлики с помощью кода, но потом при смене дизайна убрал их и забыл вновь сделать 🙂 Спасибо, что напомнили, обязательно сделаю себе такие, больше позитива!
Круто, а вас тоже таким же способом сделаны смайлики?
Спасибо! Я думал смайлики можно добавить только плагинами!
На WP можно многие вещи реализовать без плагинов, не только смайлы, другое дело, что для этого нужно знать как работает движок и язык PHP.
Или знать где взять. 😉 Существует несколько сайтов, где представлены определенные функции и скрипты, которые заменяют популярные плагины на Вордпрессе!
В том то дело что таких сайтов только несколько, чего не скажешь о буржунете где информацию на данную тему намного больше.
Смайлики хорошо но и без них можно обойтись.
Для сайта в принципе можно и не использовать, а вот для блога я думаю все-таки нужно ставить, тем более не думаю, что смайлы будут существенно влиять на скорость загрузки ресурса.
Да, так лучше! Нефиг плагинами засирать движок! Вот только порядок никак немогу изменить, хотелось бы их в другом порядке выводить
Поковыряйся немного в настройках, должно помочь.
Раньше использовал на своем блоге плагин для смайлов. Но сейчас буду пробовать используя вашу инсткуркцию. Спасибо за материал!
Смайлики способны сделать общение более приятным. Без плагина смайлики на WP — это клево! Большое спасибо за статью.
Со смайликами веселее на блоге общаться, поэтому я за их использование 😉
Жаль, но у меня не получилось вывести смайлы ни стандартные, ни вновь загруженнные. Не пойму в чем дело, может тема у меня необычная… ❓
Думаю, всё-таки, подключу у себя. Спасибо за статью.
Классный способ. Реализовал у себя на сайте. Смайлики действительно оживляют блог 😎
В нужном месте вывести так и не получилось 🙁
Возьму на заметку, скопирую данный снипет себе. Вдруг когда понадобится вставить смайлы, плагины не особо люблю использовать.
Здравствуйте. Добавила код в свой comment.php, но поле комментов исчезло вовсе. Что это может быть?
Здравствуйте! У меня на одном сайте стоит вордпрессовская форма комментариев, после вставки кода из смайлов нормально отображается только огромный зеленый 😯 , а остальные в виде пустых прямоугольников.
А на другом стоит Comments — wpDiscuz, туда вообще никакие вставить не могу, даже плагины не помогают.
Помогите разобраться, пожалуйста, уже 2 недели с ними бьюсь 🙁
Заранее спасибо!