Социальные сети — это проклятье на голову тех, кто не умеет себя занять тем, что ему интересно, и клондайк для тех, кто знает, чего хочет. В этой статье рассмотрим, как вставить блок «Поделиться», который предоставляет Яндекс в качестве готового сервиса для размещения кнопок социальных сетей. Благодаря этому сервису Яндекса, чтобы разместить кнопки поделиться в социальных сетях, не требуется каких-то специальных знаний или что-то дополнительно устанавливать в админке Joomla. Просто требуется прочитать то, что написано ниже и сделать также ; )
Как получить код Яндекса для размещения на сайте Joomla блока социальных кнопок «Поделиться»
Для того, чтобы получить код для вставки блока социальных кнопок Яндекса «Поделиться» на сайт Joomla не нужно нигде регистрироваться или что-то скачивать. Всё находится в открытом доступе и работает как танк — быстро, надёжно, прицельно и эффективно. =) Всё, что нужно знать про то, где этот код взять, подробно написано в → этой статье.
Как и куда сохранить код для вставки на сайт Joomla блока социальных кнопок
Не имеет смысла создавать модуль Joomla для вставки этого блока так, как потом придётся вручную вставлять ссылку на него в каждую статью. А я — ленивый: хочу чтобы сделать один раз, и потом всё работало на автопилоте. =)
Поэтому код разместим в папке шаблона сайта (туда есть доступ из админки Joomla, а это очень удобно!) =D
Итак, пошагово:
- Заходим в «Управление каталогами» в «Менеджере шаблонов» сайта. У меня сайт Protostar, у вас может быть другой.
- В корне папки шаблона создадим папку
includes
(в неё ещё много чего можно полезного потом сохранить). ; ) - В этой папке
includes
создадим новый файлYaShare-up.php
, в который и поместим код блока социальных кнопок «Поделиться». - Если что-то пойдёт не так, то файл всегда можно отредактировать прямо в админке.
В файловой структуре сайта этот файл будет лежать по этому пути:
./templates/protostar/includes/YaShare-up.php
Этот путь нам понадобится ниже ;)
Вносим небольшие изменения в работу стандартного компонента Joomla com_content
Для того, чтобы подключить выдачу кода, который находится в папке шаблона в файле YaShare-up.php
, нужно слегка поправить код, отвечающий за выдачу полного текста статьи. Этот файл лежит в файловой структуре Jooma по пути:
./components/com_content/views/article/view.html.php
Доступа к нему из админки нет, поэтому придётся менять его с помощью инструментов, дающих доступ к файлам, размещённым на сервере. Я пользуюсь «Менеджером файлов» ISP-manager моего хостинга firstVDS.
Для того, чтобы выдать код блока социальных кнопок «Поделиться», нужно в районе 160...170 строчек в файле view.html.php
кое-что поправить.
Было:
// NOTE: The following code (usually) sets the text to contain the fulltext, but it is the
// responsibility of the layout to check 'access-view' and only use "introtext" for guests
if ($item->params->get('show_intro', '1') == '1')
{
$item->text = $item->introtext . $item->fulltext;
}
Стало:
// читаем код вставки социальных кнопариков в переменную $YaShareUp
$YaShareUp = file_get_contents('./templates/protostar/includes/YaShare-up.php');
// NOTE: The following code (usually) sets the text to contain the fulltext, but it is the
// responsibility of the layout to check 'access-view' and only use "introtext" for guests
if ($item->params->get('show_intro', '1') == '1')
{
$item->text = $YaShareUp . $item->introtext . $item->fulltext; // выводим переменную $YaShareUp перед началом вывода статьи introtext
}
Пояснения
Для того, чтобы вывести код, расположенный в файле YaShare-up.php
, мы его прочитаем в переменную $YaShareUp
в 165-й строке (см. Стало)
И после этого, перед выводом вступительной части статьи $item->introtext
выведем сперва эту переменную $YaShareUp
, получив в итоге строчку с точкой $YaShareUp . $item->introtext
.
Всё! Код для вставки социальных кнопок Поделиться теперь будет вставляться до начала статьи, и его всегда можно будет отредактировать в Менеджере шаблонов сайта. =)
Как вставить социальные кнопки Поделиться в конец статьи подробно описано в → следующей статье.
Заберите ссылку на статью к себе, чтобы потом легко её найти!
Раз уж досюда дочитали, то может может есть желание рассказать об этом месте своим друзьям, знакомым и просто мимо проходящим?
Не надо себя сдерживать! ;)