===== Как добавить кнопки отправки ссылки на вики-страницу DokuWiki в социальные сети ===== Изначально в панели администрирования DokuWiki я нашёл плагин [[https://www.dokuwiki.org/plugin:socialite|Socialite]], с помощью которого можно добавить возможность вставки кнопок расшаривания вики-страницы в социальные сети. Однако после его установки я сразу обнаружил что вики-сайт перестал открываться. Веб-сервер возвращал 500 ошибку. В error.log веб-сервера при попытке открытия сайта фиксировалось событие: mod_fcgid: stderr: PHP Fatal error: Can't use method return value in write context in /www/mywikifqdn/lib/plugins/socialite/syntax/button.php on line 132 Чтобы вернуть сайт к работе, пришлось выполнить пару правок в коде проблемного скрипта button.php (пришлось закомментировать строки 132 и 165). После правки сайт ожил и мне удалось удалить плагин. Пришлось подумать об альтернативном варианте добавления кнопок социальных сетей. Нашёл в сети интересный бесплатный сервис добавления таких кнопок - [[pluso.ru]]. **Внимание!**\\ Использование сервиса pluso может быть небезопасным. Подробнее в статье: [[https://r-band.ru/poleznosti/pochemu-nelzya-ispolzovat-pluso-i-pochemu-on-vstavlyaet-iframe|Почему нельзя использовать PLUSO и почему он вставляет iframe]] Чтобы получить кнопки с этого сервиса, переходим [[http://share.pluso.ru/?new_a|по ссылке]] и выполняем настройку состава и внешнего вида кнопок социальных сетей, близкому к дизайну нашего сайта. {{:dokuwiki:pasted:20160308-173754.png}} В результате получаем код java-скрипта, который необходимо будет в дальнейшем вставить в любом месте нашего сайта, где мы хотим разместить кнопки социальных сетей. {{:dokuwiki:pasted:20160308-174910.png}} Для того, чтобы вставить код в DokuWiki можно пойти разными путями. Я воспользуюсь хуками предусмотренными для подобных целей разработчиками движка вики - [[https://www.dokuwiki.org/include_hooks]] Из имеющихся хуков я выбрал вариант с правкой файла **pagefooter.html** в каталоге **//lib/tpl/dokuwiki** Если этого файла не существует, то его нужно создать. В этот файл скопируем код js-скрипта полученный ранее. Перед кодом можно поставить тег переноса строки **
**, чтобы визуально отделить кнопки от контента размещённого выше кнопок. В результате в конце контента каждой вики-страницы будут отображаться наши кнопки. {{:dokuwiki:pasted:20160308-172307.png}} {{tag>DokuWiki Hooks Social Design Plugin}} ~~DISCUSSION~~