Хочу поделиться тем, как в материалах к сайту разместить кнопки социальных сетей. Для этого рекомендую с сайта разработчиков
Устанавливается плагин, как и любой другой. Для этого в административном разделе Joomla в меню "Расширения" выбираем подменю "Менеджер расширений" и во вкладке "Загрузить файл пакета" указываем файл плагина "plg_socbuttons_v16_J25-3x.zip" (самый новый на момент написания статьи) и устанавливаем плагин SocButtons. Приведу основные возможности плагина SocButtons:
- Добавлена возможность отключения og:тегов в том случае, если вы используете другое расширение, которое уже добавляет эти теги.
- Заменен код социальной сети Facebook на новый
- Добавлено поле с возможностью указать ширину для кнопки Twitter
- Добавлена возможность выводить текст перед кнопками социальных сетей, которая позволит призвать посетителя лайкнуть вашу статью (пример вы можете увидеть внизу статьи), а также добавлено поле, где можно указать разметь шрифта текста в px, а также возможность включить или выключить отображения текста.
- Настройка с выбором высоты кнопки социальной сети ВКонтакте.
- Языки для социальной сети LinkedIN.
- Убрана возможность выбора шрифта для кнопки Facebook.
- Добавлена кнопка Share от социальной сети Facebook.
- Убрана кнопка от Я.ру, так как сервис закрыт.
- Убрана возможность отображать кнопки социальных сетей в категориях статей из-за большого увеличения времени загрузки самой страницы.
- Добавлена возможность выбора обычного или асинхронного отображения кнопки Google+.
- Обновлены кнопки социальных сетей Мой Мир и Одноклассники.
- Возможность выбора Like или Recomended для кнопки социальной сети Facebook.
После установки плагина в административном разделе Joomla в меню "Расширения" выбираем подменю "Плагины". В открывшемся окне Joomla с отображением плагинов в виде таблицы 2 раза кликнем по колонке с ID, отсортировав плагины в обратном порядке, тем самым последний установленный плагин SocButtons мы видим в начале таблицы. Кликнем по нему и настроем.
Приведу настройку в плагине кнопку социальной сети "ВКонтакте". Для настройки отображения данной кнопки нам нужно указать ID своего сайта для данной социальной сети. Заходим на сайт "ВКонтакте" под своей учетной записью, кликаем в боковом меню "Разработчикам" и внизу под надписью "Продукты" видим ссылку "Виджеты для сайтов". Кликнув по ней видим ссылку "Мне нравится", перейдя по которой открывается форма "Подключение виджета к Вашему сайту". В ней указываем название сайта, адрес, основной домен и тематику сайта. Нажав ОК и указав капчу в открывшемся окне видим код, в котором нас интересует VK.init({apiId: 622**40, onlyWidgets: true});
Цифры apiId - это и есть нужный нам идентификатор. Указываем его в соответствующем поле плагина. Отображение кнопки указываем в положение да, вид и высоту кнопок оставляем по умолчанию.
Все настройки плагина SocButtons переведены на русский язык и имеют всплывающие подсказки, поэтому, рассматривать все настройке не вижу смысла. У себя я в опциях отображения плагина указываю позицию отображения социальных кнопок в положение "Ниже текста" и в дополнительных настройках плагина указываю настройку "Скрыть копирайт". Все остальные настройки я устанавливаю по умолчанию.
Хочу только обратить Ваше внимание на то, что данные социальные кнопки можно скрывать к определенным статьям. Для этого в основной вкладке настройки плагина "Плагин" в самом низу в опциях отображения плагина есть 2 поля "Исключить категории" и "Исключить страницу (id)". По смыслу понятно, что если в поле "Исключить категории" добавить категорию материалов сайта, то у всех материалов, принадлежащий к данной категории социальные кнопки отображаться не будут. В поле "Исключить страницу (id)" можно через запятую указать идентификаторы конкретных материалов, которые так же будут скрывать социальные кнопки. Этот идентификатор можно увидеть, кликнув в административном разделе Joomla в меню "Материалы" и по подменю "Менеджер материалов". Перед нами отобразятся все материалы нашего сайта в виде таблицы. Крайняя колонка таблица имеет интересующее нас название ID. Здесь мы можем посмотреть ID (идентификатор) любого интересующего нас материала.
После настроек плагина я заметил одну нехорошую особенность. Т.к. сайт одноклассники и открывается по защищенному протоколу https, то по данной причине соответствующие социальный кнопки плагина не отображаются.Чтобы исправить это открываем на редактирование файл, отвечающий за вывод плагина "Ваш_Сайт/plugins/content/socbuttons/socbuttons.php" и ищем строку js.src = "http://connect.ok.ru/connect.js";
(у меня 213 строка) и меняем в ней протокол на https, получим запись js.src = "https://connect.ok.ru/connect.js";
Аналогично <script src="http://cdn.connect.mail.ru/js/loader.js" type="text/javascript" charset="UTF-8"></script>';
(206 строка) меняем на <script src="https://cdn.connect.mail.ru/js/loader.js" type="text/javascript" charset="UTF-8"></script>';
После проделанной операции соответствующие социальные кнопки Одноклассников и Моего Мира начинают отображаться и корректно работать.
Заметил еще один нюанс после установки плагина. SEO аудит сайта, сделанный при помощи сервиса
Рис. 1. Исходный код страницы сайта opticod.ru с социальными кнопками в материалах.
Как видно из рисунка 1, представленного выше, в коде действительно расположена внешняя ссылка <a href="http://itbukva.com/" title="IT news" target="_blank">IT news</a>
, хотя, в настройках плагина установлена настройка "Скрыть копирайт". Удаляется ссылка весьма просто. Открываем на редактирование файл, отвечающий за работу данного плагина: "Ваш_сайт/plugins/content/socbuttons/socbuttons.php". В нем необходимо закомментировать или удалить запись $html .= '<div class="'.$soc_copr.'"><a href="http://itbukva.com/" title="IT news" target="_blank">IT news</a></div>';
(у меня она в строке 233). После удаления этой строки плагин продолжает корректно работать, исходящие ссылки с данных страниц пропали.
По аналогии не помешает убрать ссылки на ресурс
$html .= '<a target="_blank" class="mrc__plugin_uber_like_button" href="http://connect.mail.ru/share?url='.$link.'" data-mrc-config="{\'cm\' : \''.$this->params->get('mm_txt').'\', \'sz\' : \'20\', \'st\' : \'2\', \'tp\' : \'mm\''.$mmt.'}">Нравится</a>
Если ее удалить целиком, то социальная кнопка перестанет работать. Поэтому поступим другим образом. Добавим код rel="nofollow"
, предназначенный для поисковых систем Google и Яндекс и заключим строку в тэги <noindex></noindex>
, предназначенный для остальных поисковых систем. Ссылки, помеченные таким образом, не передают PageRank и ТИЦ. В итоге получаем строку:
$html .= '<noindex><a rel="nofollow" target="_blank" class="mrc__plugin_uber_like_button" href="http://connect.mail.ru/share?url='.$link.'" data-mrc-config="{\'cm\' : \''.$this->params->get('mm_txt').'\', \'sz\' : \'20\', \'st\' : \'2\', \'tp\' : \'mm\''.$mmt.'}">Нравится</a></noindex>
Для того, чтобы в тексте материала Joomla точно таким же способом "экранировать" от поисковой системы ссылку, в стандартном редакторе Joomla, скажем TinyMCE, существует встроенный механизм редактирования ссылок. При выделении фрагмента и нажатии на соответствующую кнопку "Вставить/редактировать ссылку" открывается окно, представленное на рисунке 2 ниже.
Рис. 2. Редактирование ссылки в редакторе TinyMCE.
В нем достаточно указать атрибут Rel = No Follow. После этого поисковые системы будут игнорировать данную внешнюю ссылку и не будут отдавать PageRank и ТИЦ на другой ресурс.
Также можно было воспользоваться плагином disAllow для закрытия всех внешних ссылок.
На этом сегодня все. Успехов Вам в разработке.