Модуль интеграции Drupal 7 со сторонними сервисами

Главные вкладки

Аватар пользователя APolitsin APolitsin 19 февраля 2012 в 1:13

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

Зачем делиться:
- для себя: чтобы структурировать код и сделать таки review
- чтобы быстрее отлавливать баги
- чтобы подсказали как лучше
- чтобы друпал стал более распространен и появлялись новые решения на этой системе

Делиться будем следующими модулями:
- Модуль интеграции друпала со сторонними сервисами (в первую очередь с яндексом)
- Модуль для отображения объекта на яндекс картах
- Модуль view_yamap для интеграции предыдущего модуля с вьювсом

Итак. Первый модуль - synapse. (Остальные чуть позже)
Это модуль сделан для наших внутренних нужд. Он нужен для того, чтобы клиенты не дергали проджектменеджеров лишними вопросами, а проджектменеджеры соответственно не дергали лишними вопросами программистов.

Поскольку делася для себя, то он так и называется "synapse". Но по счастливой случайности такое название прекрасно совпадает с функционалом модуля, поэтому переименовывать его не будем. Википедия нам подсказывает:
Си́напс — место контакта между двумя нейронами или между нейроном и получающей сигнал эффекторной клеткой. Служит для передачи нервного импульса между двумя клетками.

Посколку внизу длинная простыня скриншетов, чтобы не томить сразу ссылки:
- модуль synapse.zip
- проект в песочнице друпал.орг

Что делает модуль:
1. Изменяет страницу добавления материала
2. Дружит сайт с гул/яндекс вебмастером
3. Добавляет на сайт яндекс-метрику
4. Отображает яндекс-карту на странице с контактами
5. Размещает информацию о компании в формате hCard
6. Позволяет быстро добавить вконтактогруппу и магазин на еквиде
7. Менять автоматически год создания сайта в подвале

По пунктам

0. Меняет значения по умолчанию

Меняет значения по умолчанию на странице добавления типа материала (admin/structure/types/add):

  • Чистим поле "название поля заголовка", чтобы программисты не забывали поставить человечное "название альбома", вместо бездушного "Title"
  • В настройках публикации вместо галочки "на главную" ставим галочку "создавать редакции"
  • Убираем галочку "показывать автора и дату", т.к. в корпоративных сайтах это нужно только у "новостей"
  • Снимаем галочку в "настройках меню" т.к. у корпоративных сайтов это нужно только у "страниц"

1. Страница добавления материала


Страница добавления материала для клиента не должна содержать "лишних" полей. Каждое лишнее поле - звонок менеджеру, поэтому:

  • Перемещаем меню из вертикальных табов в свернутый филдсет
  • Включаем галочку "добавить в меню", чтобы все "страницы" гарантировано попадали в меню
  • Есть возможность выставить родительский пункт меню по умолчанию. Полезно при использовании на сайте горизонтального меню, т.к. (смотрим предыдущий пункт) все "страницы" у нас по умолчанию попадают сразу в меню, и оно может стать шире, чем предусмотрено дизайном.
  • Прячем лишние для пользователя поля: вес меню, родительский пункт меню, информация о редакции
  • Прячем поля "выбор формата ввода" для "body".

Всё это естественно регулируется на странице настроек

2. гугл/яндекс вебмастер

Менеджер проекта (или клиент) может сам быстро добавить сайт в гугл/яндекс вебмастер, без обращения к программису

3. Яндекс-метрика

Менеджер проекта (или клиент) может добавить на сайт яндекс-метрику не обращаясь к программисту. При желании можно отобразить информер (картинка с кол-вом посетителей) - блок, который можно перетащить например в подвал. Для гугланалитика есть отдельный модуль http://drupal.org/project/google_analytics

4.Контакты с яндекс-картой

Менеджер проекта (или клиент) может отобразить на странице контактов яндекс-карту с отметкой о местоположении организации не обращаясь к программисту.

5. hCard

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

Потом настройки

6. "еквид" и "vk_group"

Вкладочка "прочее" позволяет быстро добавить на сайт магазин "еквид" и "блок с группой вконтакте"

7. Модуль делает блок "копирайты".

Модуль делает блок "копирайты" Данные для блока берет из названия орагинзции в hCard и поля "Year From" вкладки "прочее". Результат полчаем в следующем в формате:
©2012 — %Название%
или
2011 — 2012 © %Название% (Если наступит следующий год).
© - ссылка на страницу логина (user) чтобы не уродовать сайт формой логина, и не заставлять пользователя вбивать "специальный" адрес в командную строку

Комментарии

Аватар пользователя Айдар Айдар 19 февраля 2012 в 1:41

"zaraza" wrote:
- Модуль для отображения объекта на яндекс картах
- Модуль view_yamap для интеграции предыдущего модуля с вьювсом

Да! Да! Дааааааааааааааааа!
"zaraza" wrote:
(Остальные чуть позже)

Ну когда же?! Поскорее бы!

Аватар пользователя Petro Petro 27 февраля 2012 в 9:58

А когда поделитесь
Модуль для отображения объекта на яндекс картах
Модуль view_yamap для интеграции предыдущего модуля с вьювсом ?

Аватар пользователя APolitsin APolitsin 27 февраля 2012 в 23:59

"Petro" wrote:
А когда поделитесь
Модуль для отображения объекта на яндекс картах
Модуль view_yamap для интеграции предыдущего модуля с вьювсом ?

Ждем апрува этого модуля на друпал.орге. На той неделе планировал написать про модуль для карт, не успел. Надеюсь на этой напишу.

Аватар пользователя anikinjura anikinjura 3 марта 2012 в 16:11

Как бы посмотреть на остальные модули:
- Модуль для отображения объекта на яндекс картах
- Модуль view_yamap для интеграции предыдущего модуля с вьювсом

?

Аватар пользователя Geldora Geldora 10 апреля 2012 в 22:13

СТавила, потом отключила.

Проблема такая, мне из всего функционала нужен только копирайт, яметрика и группа ВК... Однако, если включишь модуль, но придется указывать все (возникли ошибки из-за того, что не были указаны ХКарта и т.д. и т.п.)

Предложение: по возможности разбить модуль на под плагины. Или добавить галки вкл/выкл, чтобы не возникало проблем.