Плагин Facebook 0.5
Привет Сообщество!
Рад представить вашему вниманию, обновленную версию плагина Facebook.
Плагин поддерживает версии LiveStreet 0.4.2 и 0.5.1
Поддерживаются шаблоны написанные с использованием как mootools, так и jquery.
UPD 23.12.2011: С 13 декабря, JavaScript SDK стал поддерживать OAuth 2.0 для авторизации. Это привело к появлению ошибки при попытке авторизоваться и получить список страниц пользователя на втором шаге мастера настройки. Ошибка исправлена в версии 0.5.1. Спасибо Giorgi за сообщение о неработоспособности.
Основные фичи:
Мастер интеграции с Facebook
Всего четыре простых шага и анонсы топиков будут автоматически добавляться на выбранную страничку в социальной сети Facebook.Вставка Open Graph тэгов: изображение, видео YouTube, видео Vimeo.
Благодаря Open Graph, пользователю не потребуется выбирать картинку при публикации ссылки. А в случае, когда пользователь «залайкал» страничку, нужная картинка «подтянется» автоматически.Вот так будет выглядеть диалог публикации ссылки без плагина Facebook:
А это результат вставки Open Graph тэгов:
Если в топике есть видео с Youtube или Vimeo, то информация о нем так же появится в OpenGraph тэгах. А пользователи социальных сетей смогут сразу же просмотреть его.
Администраторские функции: принудительная публикация/блокировка/удаление ранее опубликованного в Facebook топика.
В модерируемых сообществах пригодится возможность вручную, «по-быстрому», добавить анонс в социальную сеть. Плагин поддерживает такую функцию для администратора. Кроме того, администратор может заблокировать появление анонса на топик, или удалить ранее опубликованный анонс.Блок информирования пользователя, о возможности попадания анонса создаваемого топика на страницу в Facebook
Возможности для сторонних разработчиков
Если вы разработчик плагинов, используйте возможность установить Open Graph тэги для генерируемых страниц.if (class_exists('PluginFacebook')) {
$aHeaders = array(
'type'=>'image',
'picture' => 'http://mywebserver.com/uploads/pathtoimage.jpg',
'title' => 'Все на Эльбрус!'
);
$this->PluginFacebook_Facebook_SetOpenGraphHeaders($aHeaders);
}
Установка и настройка
Скачать плагин можно с GitHub, а через некоторое время и из официального репозитария.
- Для работы плагина необходимо, что бы PHP был собран с расширениями cUrl и SimpleXml.
- Перед началом установки или обновления, необходимо создать резервную копию сайта и базы данных.
- В случае обновления, деактивируйте старый плагин через панель управления плагинами (/admin/plugins/).
- Если вы используете версию LiveStreet 0.5.1 и выше, и название используемой темы отлично от new, и в качестве JS-фреймворка используется mootools — добавьте в конец config.php (но перед return $config; !!!) строку $config['js']='mootools'; (о настройках через config.php см. ниже)
Установка:
- Скачайте архив и распакуйте.
- Если вы качали с github, переименуйте «верхнюю» папку в facebook. При распаковке архива из репозитария, папка уже будет называться facebook. Убедитесь, что внутри папки facebook присутствуют папки classes, config и templates.
- Скопируйте папку facebook в директорию plugins на веб-сервере.
- Активируйте плагин Facebook в панели управления плагинами (/admin/plugins/).
- После успешной активации откройте /facebook/setup/ (пока плагин не настроен, ссылку на эту страницу будет видеть администратор в окошке виджета Facebook ). Пройдите четыре шага мастера и сохраните настройки.
Настройка:
Файл /plugins/facebook/config/config.php позволяет настроить ряд дополнительных параметров:
Стратегия публикации
Существует две стратегии публикации: при выходе на главную страницу и при достижении заданного рейтинга. За выбор стратегии отвечает строка:
$config['strategy']=...
Возможные значения: 'STRATEGY_MAIN' или 'STRATEGY_RATING'.
Если используется значение 'STRATEGY_RATING', необходимо указать границу рейтинга, после которой анонс топика будет добавлен в Facebook.
$config['STRATEGY_RATING']['rating']=10;
Если в качестве значения указать 0 — анонс топика будет опубликован при его добавлении.
Настройка отображения блока с виджетом Facebook
Config::Set('block.rule_facebook',array(
'path' => array(),
'action' => array('blog','personal_blog','top','people','my','people','index','stream','tag','facebook'),
'blocks' => array(
'right' => array(
'facebook' => array('priority'=>0,'params'=>array('plugin'=>'facebook'))
)
),
'clear' => false,
));
Более подробно, о правилах отображения блоков можно прочитать в топике «Система блоков»
Замечание для пользователей плагина NiceUrl: что бы виджет плагина отображался на страницах топиков, в массив action необходимо добавить элемент 'error'. Впрочем, можно переписать правило, что бы виджет отображался на всех страницах:
Config::Set('block.rule_facebook',array(
'path' => array('.*'),
'action' => array(),
'blocks' => array(
'right' => array(
'facebook' => array('priority'=>0,'params'=>array('plugin'=>'facebook'))
)
),
'clear' => false,
));
Выбор фреймворка, на котором построен активный шаблон
Эта настройка актуальна для сайтов работающих с использованием LiveStreet 0.5.1 и использующих js-фреймворк mootools и имя темы отличное от new.
Что бы указать плагину на использование mootools, перед return $config; добавьте строку:
$config['js']='mootools';
Картинка по умолчанию для Open Graph
Если в топике, до ката, отсутствуют картинки и видео, в Open Graph тэги будет добавлена картинка по умолчанию: /plugins/facebook/templates/skin/default/images/default.jpg
Вы можете загрузить свою картинку поверх дефолтной или изменить путь, через параметр:
$config['default_post_image']=...;
Например:
$config['default_post_image']='___path.root.web___/sitelogo.jpg';
Удачи!
58 комментариев
Может Твиттер подойдет? ;)
твиттер автоматом можно настроиться средствами feedburner. Причем теги топика превращаются в хештеги твиттера)
пример www.facebook.com/cookorama
но + тоже есть))
можно ли где-то лог включить?
Лог пишется в случаях появления ошибок при публикации, удалении, сохранении настроек, чтении информации о странице, получении списка аккаунтов.
Лог пишется через системный логгер. Ошибки попадают в /logs/log.log
Я прав?
А рсс блогов, главной и чего там можно еще — без проблем транслируется в фейсбук. Зачем нагружать сайт лишним плагином, если можно сделать сторонними методами?
Я использую шаблон «social» jquery
Т.к. у сущности нового топика не установлен рейтинг, попытка получить его приводила к появлению нотиса.
в принципе, если бы было RSS отдельно комментариев — я бы знал как решить эту задачу
Что делать?)
— версия ЛС
— шаблон
у меня в «Лисе» была такая хрень…
Стоит StreetSpirit, но я менял на другие шаблоны, сбрасывал кеш, все как положено, эффекту ноль.
в то время как ручной перепост все ещё выглядит примерно как раньше
Может быть как-то самостоятельно можно настроить этот момент? Что бы автоматический перепост был бы таким же большим как и ручной?
Разработчик почему-то давно не отвечает на запросы об ошибках или доработках.
Может найдется тот, что сможет доработать плагин для новой версии? Или сделать свой, пусть даже и платный.
Лучше уж заплатить, чем маяться по пол года…
Я созрел, если что, вложиться.