Drupal 7

Как подключиться к другой базе данных

Иногда приходится подключиться к другой базе данных и забрать из неё какие-либо данные. Сейчас я покажу, как правильно это делать в Drupal 7.

Шаг 1. Для подключения к другой базе данных необходимо создать массив с информацией для подключения к этой базе данных (структура этого массива будет зависеть от драйвера базы данных, используемого для этого подключения):

$other_database = array(
  'database' => 'database_name', // Название базы данных к...
Benya

Ctools modal API. Работа с модальными окнами

Последнее время появляются все больше и больше сайтов с попапами. Благодаря Эрлу Майлзу мы имеем замечательный инструмент - Ctools, представляющий мощный API для друпалера. Сегодня мы рассмотрим modal API и научимся с ним работать.

В качестве примера будем открывать форму обратной связи в модальном окне. Но прежде чем начать, я быстренько пробегусь по командам AJAX-фреймворка.

  • ajax_command_after($selector, $html, $settings = NULL) – вставляет...
Benya

Как создать content_type плагин для модуля Ctools

При работе с модулем Panels content_types плагины являются очень важной составляющей страницы. Для начала давайте разберемся, что же такое content_types плагины и для чего они нужны. Когда мы перекрываем страницу модулем Page Manager и изменяем вывод страницы модулем Panels, именно с помощью content_types плагинов мы выводим содержимое на страницу.

Любому друпалеру рано или поздно придется написать свой плагин. И сегодня я покажу как это сделать. Для примера, я напишу плагин, который...

Benya

Как создать access плагин для модуля Ctools

Продолжаем изучать работу с модулями Panels и Page Manager и сегодня я покажу как написать свой access плагин. К слову сказать существует 6 типов плагинов для модуля Ctools:

  • access плагины - данный тип плагинов позволяет указывать критерии доступа к содержимому панелей и для вариантов страниц;
  • content_types плагины - данный тип плагинов выводит содержимое на страницу;
  • context плагины - данный тип плагинов определяет различные...
Benya

Как использовать модуль Views с модулем Panels

Модуль Views очень мощный инструмент, используемый при создании сайтов на Drupal. При связке с модулем Panels он обретает дополнительную гибкость, которой так не хватало. Например, можно без проблем вывести один вьюз несколько раз на одной странице с разными настройками и контекстными фильтрами, при этом не приходится тратить время на то, чтобы лезть в код.

Для сегодняшнего урока я поставлю задачу:
Имеется два типа материала (новости и статьи), они связаны друг с другом с помощью...

Benya

Как создать style плагин для модуля Panels

Сегодня речь пойдет о том, как создать style плагин для модуля Panels. Styles плагины, как и layouts плагины принято подключать через тему оформления, но можно и через модуль.

Подключение style плагина через тему оформления

Примерная структура каталогов будет следующей:

themeName
  panels
    styles
      first_style
        first_style.css
        first_style.inc
        first-style-shadow-box.tpl.php

Первым делом открываем themeName.info и добавляем туда следующую строку:...

Benya

Как создать layout плагин для модуля Panels

Сегодня я покажу как создать layout плагин для модуля Panels. Layouts плагины принято подключать через тему оформления, но можно и через модуль.

Подключение layout плагина через тему оформления

Примерная структура каталогов будет следующей:

themeName
  panels
    layouts
      first_layout
        first_layout.css
        first_layout.inc
        first_layout.png
        layout-sample-first-layout.tpl.php

Первым делом открываем themeName.info и добавляем туда следующую строку...

Benya

Как перекрыть существующую страницу с помощью модуля Page manager existing pages

Сегодня я расскажу об очень важной особенности при работе с модулем Panels и Page Manager. Любому друпалеру, который работает с модулем Panels, когда нибудь может понадобиться изменить вывод существующей страницы. При попытке переопределить страницу стандартным способом с помощью модуля Page Manager, мы увидим сообщение: "Этот путь уже используется. Система не может заменить существующие пути". С решением данной проблемы нам поможет модуль Page manager existing pages.

Шаг 1...

Benya