Как поставить смайлы на века и зафиксировать их в шаблоне
Want create site? Find Free WordPress Themes and plugins.

Всем привет!

+

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

Почему вредно ставить плагин – дело в том, что большое количество плагинов начнут замедлять работу блога, а это плохо отражается на SEO продвижении (чем быстрее блог, тем выше позиции в выдаче). Читайте «Как ускорить блог». Плагины ставят свои таблицы в MySQL, которые потом приходиться чистить, так как они влияют на скорость и при удалении плагин их оставляет в базе данных.

Меню:

  1. Кому нужны смайлы
  2. Как их включить
  3. Решение проблемы
  4. Фиксация смайликов

Сначала думаю, нужно описать зачем вообще нужно устанавливать смайлы без плагина, а потом перейдем к практике.

Зачем нужны смайлики на блоге

Во-первых, смайлы оживляют ваш блог – предают ему отличный, который не может не понравится посетителям. На сайте могут быть интересные картинки, что тоже оживляет и делает его интересней, это очень важно: «Веб-ресурс должен быть не только полезным, делайте ИНТЕРЕСНЫМ свой ресурс.

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

Как включить смайлы WordPress без плагина

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

Как поставить смайлы без плагина

Если честно, то они мне не очень нравятся, и я установил свои, это можете сделать вы, я покажу как. Кликните по этой ссылке, выберите себе подходящие смайлики и перетаскивайте их в специальную папку заменив старые, путь:

Wp-includes/images/smilies

Теперь у нас остался последний шаг! Мы добавим небольшой скрипт в файл нашего шаблона. Заходим в корень блога по следующему адресу:

Wp-content/themes/название темы

Находите файл, отвечающий за комментарии, обычно это comments.php. Теперь нам нужен тег textarea, найдите его просто нажав на клавиатуре CTRL+F (откроется поиск), вставляйте в него слово textarea и жмите ENTER.

<textarea name="comment" id="comment" rows="10" cols="1"></textarea>

После второго слова textarea (он называется закрывающим тегом), вставляйте скрипт:

<script>
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>';
?>


После сохранения, ваши ожидаемые смайлы без плагина появятся в комментариях при перезагрузке страницы.

Далее, я хочу поделится с вами, как поставить смайлы WordPress блог на все время, чтобы они не слетали при обновлении движка и не заменились чем-то другим, как это произошло с обновлением WordPress 4.2.2. Читайте дальше, и вы узнаете, как с легкостью поставить смайлы или нерушимые смайлы.

Эта статья подойдет для:

  • Тех, кто не хочет парится с загрузкой смайликов
  • Тех, кто столкнулся с проблемой, описанной ниже

С проблемой замена смайлов столкнулись все, кто обновляется до последней версии движка, но я нашел решение данной проблеме и этим решением поделюсь с вами, узнаете, как поставить смайлы на века!

Если вы не обновляете свой движок, то очень рискуете заразить свой сайт! По результатам исследования было выяснено, что обновление CMS снижает риск заражения в два раза. При заражении сайта или блога поисковые системы Яндекс и Google заносят его в черный список, после чего владельцам очень тяжело из него выйти, даже вылечив свой ресурс. Можете почитать подробно об этом, с первоисточника, здесь, а также узнать о других интересных CMS исследованиях.

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

С обновлением WordPress 4.2.2 у всех владельцев блогов пропали смайлы! Вместо них появились пустые изображения, их видите ниже:

Как поставить смайлы навсегда

Кроме этих пустышек появились смайлы формата PNG. Лично у меня всегда стояли смайлики GIF. Почему разработчики WordPress добавили лишние имена и расширения, я не знаю.

Как решить проблему со смайликами

Сначала, я пробовал решить этот вопрос восстановлением файла comment-template.php, он находится по адресу wp-includes. После загрузки моих любимых смайлов в папку images/smilies, смайлики опять начали прыгать в комментариях моих читателей, но в корне этот вопрос был не решен, ведь где гарантия, что следующее обновление будет исправлено?

Читайте: «Создать копию базы данных и сделать резерв сайта«.

Я не думаю, что это какой-то глюк программ разработчиков движка или недоработка профессиональных программистов! Такой CMS движок, как WordPress не могли доверить обновлять не серьезным людям, вы как думаете?

Я считаю, что такое новшество не ошибка. А новое разработка, только не понятно зачем и для чего. Но да ладно, сейчас мы решим с вами эту проблему в два счета.

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

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

Wp-content/themes/название темы

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

Открывайте файл functions.php и в самый конец, перед тегом?>, добавляйте код:

// Задаем новое расположение смайлов по-умолчанию www.advdk.com
function classic_smilies_src( $old, $img ) {
 $mythemes = get_template();
 return site_url( "/wp-content/themes/$mythemes/smilies/{$img}", __FILE__ );
}
 
// Возвращаем сопоставление символов файлам
add_action( 'init', 'classic_smilies_init', 1 );
function classic_smilies_init() {
 global $wpsmiliestrans;
 $wpsmiliestrans = array(
 ':mrgreen:' => 'icon_mrgreen.gif',
 ':neutral:' => 'icon_neutral.gif',
 ':twisted:' => 'icon_twisted.gif',
 ':arrow:' => 'icon_arrow.gif',
 ':shock:' => 'icon_eek.gif',
 ':smile:' => 'icon_smile.gif',
 ':???:' => 'icon_confused.gif',
 ':cool:' => 'icon_cool.gif',
 ':evil:' => 'icon_evil.gif',
 ':grin:' => 'icon_biggrin.gif',
 ':idea:' => 'icon_idea.gif',
 ':oops:' => 'icon_redface.gif',
 ':razz:' => 'icon_razz.gif',
 ':roll:' => 'icon_rolleyes.gif',
 ':wink:' => 'icon_wink.gif',
 ':cry:' => 'icon_cry.gif',
 ':eek:' => 'icon_surprised.gif',
 ':lol:' => 'icon_lol.gif',
 ':mad:' => 'icon_mad.gif',
 ':sad:' => 'icon_sad.gif',
 '8-)' => 'icon_cool.gif',
 '8-O' => 'icon_eek.gif',
 ':-(' => 'icon_sad.gif',
 ':-)' => 'icon_smile.gif',
 ':-?' => 'icon_confused.gif',
 ':-D' => 'icon_biggrin.gif',
 ':-P' => 'icon_razz.gif',
 ':-o' => 'icon_surprised.gif',
 ':-x' => 'icon_mad.gif',
 ':-|' => 'icon_neutral.gif',
 ';-)' => 'icon_wink.gif',
 '8O' => 'icon_eek.gif',
 ':(' => 'icon_sad.gif',
 ':)' => 'icon_smile.gif',
 ':?' => 'icon_confused.gif',
 ':D' => 'icon_biggrin.gif',
 ':P' => 'icon_razz.gif',
 ':o' => 'icon_surprised.gif',
 ':x' => 'icon_mad.gif',
 ':|' => 'icon_neutral.gif',
 ';)' => 'icon_wink.gif',
 ':!:' => 'icon_exclaim.gif',
 ':?:' => 'icon_question.gif',
 );
 add_filter( 'smilies_src', 'classic_smilies_src', 10, 2 );
 
// Отключаем загрузку скриптов и стилей Emoji
remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
remove_action( 'wp_print_styles', 'print_emoji_styles' );
remove_action( 'admin_print_styles', 'print_emoji_styles' ); 
remove_filter( 'the_content_feed', 'wp_staticize_emoji' );
remove_filter( 'comment_text_rss', 'wp_staticize_emoji' ); 
remove_filter( 'wp_mail', 'wp_staticize_emoji_for_email' );
add_filter( 'tiny_mce_plugins', 'classic_smilies_rm_tinymce_emoji' );
add_filter( 'the_content', 'classic_smilies_rm_additional_styles', 11 );
add_filter( 'the_excerpt', 'classic_smilies_rm_additional_styles', 11 );
add_filter( 'comment_text', 'classic_smilies_rm_additional_styles', 21 );
}
 
// Отключаем Emoji в визуальном редакторе TinyMCE
function classic_smilies_rm_tinymce_emoji( $plugins ) {
 return array_diff( $plugins, array( 'wpemoji' ) );
}
 
// Убираем размеры смайликов равные 1em (новые задаются для класса .wp-smiley)
function classic_smilies_rm_additional_styles( $content ) {
 return str_replace( 'class="wp-smiley" style="height: 1em; max-height: 1em;"', 'class="wp-smiley"', $content );
}


Сохраняйте изменения! После этих несложных движений посмотрите на страницы своего блога. Теперь вы поставили смайлы, которые не нужно постоянно кидать в папку wp-includes после обновления CMS.

Установили смайлы на блоге навечно! Только после смены дизайна, конечно стоит повторить данное действия еще раз. Если вам этих смайликов мало, то читайте статью о том, как их добавить: «Как добавить количество смайликов на WordPress блог».

Внимание: в той статье рассказано о файле comment-template.php, вы же добавляйте смайлы в функцию, приведенную выше «Возвращаем сопоставление символов файлам».

На этом у меня все. Надеюсь ваша проблема решена? Подписывайтесь на обновления моего блога, нажав здесь, чтобы ничего не пропустить. До встречи!

Did you find apk for android? You can find new Free Android Games and apps.

С уважением, Алексей Кобзарев

Лучшие статьи

30 Комментариев к “Как поставить смайлы без плагина и зафиксировать их в шаблоне”

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