Сен
24
4

Виджет социальных ссылок и добавление протокола wp_allowed_protocols

Виджет социальных ссылокОбычно при создании сайтов/блогов кроме основной области контента добавляются 1-2 боковые колонки с разными информационными блоками. В WordPress для реализации этой задачи используются виджеты – это может быть список ссылок, баннеры, краткое описание проекта либо отображение случайных цитат. Сегодня рассмотрим плагин Meks Smart Social Widget, позволяющий легко выводить иконки со ссылками на профили социальных сетей и сервисов. Также вкратце разберем функцию wp_allowed_protocols, без которой тут не обойтись.

Во-первых, следует уточнить, что в отличии от модуля AddThis Sharing Buttons вы добавляете кнопки НЕ для шеринга (распространения) информации, а просто делитесь ссылками для перехода в свои аккаунты Facebook, Инстаграм, Телеграм и т.п.

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

Однако виджет Meks Smart Social Widget немного упрощает задачу:

  • Вам не нужно искать всевозможные иконки – в модуле поддерживается более 100 разных сервисов и веб-проектов: от классических Blogger, Flickr, Rss, Twitter до экзотических 500px, Twitch, vKontakte, Dribbble, LastFM, Soundcloud и др.
  • В отличии от процесса подключения Font Awesome в WordPress здесь все реализуется максимально просто в несколько кликов.
  • В виджете имеется ряд настроек по отображению иконок: размеры, формат (круглые, квадратные) – то есть вам не нужно будет разбираться с CSS.

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

Установка стандартная – находите плагин по названию или здесь и активируете. После этого в разделе “Виджеты” появится новый элемент.

Виджет Meks Smart Social Widget

Виджет социальных ссылок имеет такие параметры:

  • общий заголовок блока;
  • краткое описание;
  • форма иконок: квадратная, круглая, закругленные края;
  • размер картинок;
  • размер шрифта иконок;
  • открытие линков в новом/том же окне;

Дальше в настройках увидите кнопку “Add icon”, с помощью которой добавляете новые элементы-иконки для отображения. Каждый объект состоит из названия сервиса и требуемой внешней ссылки.

В результат на сайте увидите что-то вроде:

Виджет социальных ссылок

Для генерирования соответствующих картинок тут используется шрифт socicon. Есть также кнопка почты, что иногда полезно. Жаль нельзя добавить свою картинку – тогда бы плагин был на 100% универсальным.

Функция wp_allowed_protocols и добавление протокола

В ходе работы с виджетом социальных иконок мне пришлось немного подправить его исходный код. Фишка в том, что некоторые сервисы позволяют использовать ссылки со своими “протоколами” вместо http/https, например:

viber://add?number=хххххх
tg://resolve?domain=хххххх

Если их указывать в Meks Smart Social Widget, то он попросту не будет сохранять данные. Дело в том, что количество протоколов в WordPress ограничено, и чтобы их дополнить нужно использовать функцию wp_allowed_protocols().

Просмотрев файл модуля class-social-widget.php, увидите там подключение протокола Skype:

Функция wp_allowed_protocols

Если же вам нужно добавить еще какие-то, то в functions.php активной темы пишем строки:

function ss_allow_skype_protocol( $protocols ){
    $protocols[] = 'tg';
    $protocols[] = 'viber';    
    return $protocols;
}
add_filter( 'kses_allowed_protocols' , 'ss_allow_skype_protocol' );

Сохраняете и тестируете добавление новых линков в виджет социальных кнопок. У меня все работает, но добавлять значения получилось только по одному (если делать через запятую, то слетает весь сайт).

В качестве итогов можно сказать, что существуют и другие плагины социальных ссылок в сайдбаре, но я их специально не искал. Как уже говорил выше, это решение случайно попалось на глаза вместе с установкой одного шаблона. Мне лично Meks Smart Social Widget понравился – достаточно простой и универсальный.

рейтинг Оцените статью:
Ужасная статьяНичего интересногоТак себеНормальноХорошоКлассный постВ закладки!
(голосов - 15, средний балл: 3,87 из 7)
Загрузка...

категория Категории: Виджеты;
теги Теги: , , , , , .

комментария 4 к статье “Виджет социальных ссылок и добавление протокола wp_allowed_protocols”

  • devarts   22.10.2019

    Как по мне, вредная штука. Лишний и не нужный код в бэкенд, который проще вывести в разметку на HTML

  • Tod   22.10.2019

    devarts, это больше для заказчика, чем для разработчика.. согласен, второму проще вставить код через HTML, первому — выбрать из списка соц.сеть (с готовой иконкой) и указать ссылку.

  • Тимур   06.04.2020

    Спасибо тебе, добрый человек!
    Решил проблему)) У меня при добавлении ссылок с tg:// и viber:// затирались протоколы, хотя раньше работало.

  • Tod   06.04.2020

    Тимур, у меня была такая же ситуация — сначала все работало, а потом в какой-то момент перестало. Поэтому и нашел функцию wp_allowed_protocols)

Оставить комментарий


Блог Wordpress Inside поможет вам научиться работать в вордпресс, закрепить и расширить имеющиеся знания. Плагины и шаблоны, разные хаки и функции wp, оптимизация и безопасность системы – все это и намного больше вы сможете найти на страницах нашего проекта!

Если хотите быстро и оперативно получать последние новости и статьи, то рекомендуем подписаться на обновления блога:

Поиск:
Последние посты
Лучшее в категории

Облако тегов
Скажи свое мнение!

В чем основные плюсы Wordpress?

Посмотреть результаты

Загрузка ... Загрузка ...
Друзья проекта
Последние новости