Организация кросс-сайтового виджета на drupal

Какое то непонятное название для статьи получилось, расшифрую что имелось в виду. Допустим, у вас есть некий сайт, контент с которого было бы удобно представить в виде блочка на другом сайта. Цели могут быть разными — это может быть реклама сайта с динамически изменяющимся контентом (к примеру брифинг новостей или ротация заголовков статей с некого сайта-источника), это может быть внедрение какого информационного сервиса, который вы (возможно даже платно) разрешаете размещать на других сайтах (примеры — курсы валют, погоды и т.п.)

Вводная (условия задачи)

Разместить информационный блок с другого сайта (сайта-источника) в виде вставки HTML кода, вроде:

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

Решение

Надо помнить, что все изображения (картинки) и стили должны содержаться на сайте-источнике. Т.е. HTML блок должен иметь абсолютные ссылки как для адресов картинок (img), так и для cсылок-якорей (a), так и для изображений, описываемых в каскадных стилях. При этом описание стилей передается вместе с блоком HTML.

Сайты-приемники, запрашивают скрипт с сайта-источника по некоторому адресу. Допустим — это некий адрес — http://www.source.ru/widget.js. Тогда в модуле (пусть этот модуль называется widgetmodule) на сайте-источнике у нас появится примерно такой код:

Где в функции _exportsource_js реализуется создание нужного нам кода javascript. Рассмотрим эту функцию подробнее.

Т.е. механизм — как видно — весьма прост. А технические задачи вроде объявления специального адреса скрипта выводящего блок, создание валидного кода javascript — все решается средствами drupal.

Есть вопросы? -пишите!

Написать комментарий

Мало букафф? Читайте есчо !

Подключаем fancybox в Drupal 6

Сентябрь 1, 2013 г.

Fancybox - известный плагин jQuery для создания эффекта "просмотра в окошке". Давайте подключим его в 6-ю версию Drupal. Ряд "деятелей" предлагают поставить для этой цели, кроме самой библиотеки, ещё два плагина - jquery_update и fancybox. Определенный ...

Читать

Drupal 7, проверить авторизован ли пользователь

Ноябрь 13, 2017 г.

Если в коде необходимо проверить авторизовался ли текущий пользователь, то можно использовать как минимум два подхода. Глобальная переменная user GLOBALS['user'] в Drupal хранит объект текущего пользователя, расширенного информацией о ролях пользователя. ...

Читать

 

Комментарии к «Организация кросс-сайтового виджета на drupal»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: