Статьи о Drupal

Если по каким-то причинам вы импортировали сырые значения текстов нод в поле body прямо в базе данных, и теперь вам нужно, чтобы все теги отображались не текстом, а работали как обычные теги - надо запустить VBO с таким кодом:

$entity->body['und'][0]['format...

Из-за того, что в Друпал 7 есть такой замечательный модуль как Feeds, который умеет абсолютно всё - и загружать картинки по урл, и выставлять соответсвие терминам таксономии по их названиям - что перенос с Друпал 6 а Друпал 7 материала представляет собой, по сути, просто правильное составление запросов в базу, чтобы через phpmyadmin сгенерировать csv-файл. Потом этот csv просто импортируем через Feeds на новый сайт - и дело в шляпе.
Перенос терминов с прикрепленными к ним картинками (использовался модуль taxonomy image)

...

Нигде не нашел, как темизировать аяксовую форму загрузки изображений в Друпал 7. Пришлось писать свои костыли, получилось некрасиво, но работает:

(function ($) {
  Drupal.behaviors.init_image_field = {
    attach: function(...

Для того чтобы программно создать своё CCK-поле при установке своего модуля, вам нужно использовать хук install/uninstall в файле .install.
Порядок такой: сначала создаётся поле, а только потом его экземпляр. Удаляется в обратной последовательности.
Если использовать хуки enable/disable, то экземпляры поля будут создаваться при каждом включении модуля.
Вот здесь хорошо расписаны типы всех полей и типы виджетов http://ado.io/blog/drupal-7/working-programmatically-with-fields-in-drup......

Недавно для одного проекта мне пришлось выступить в роли "натягивателя" дизайна, а именно: был готов свёрстанный в html макет, а так же был готов функционал на Друпал; осталось только объединить их вместе и сделать одну тему оформления для всего этого.

Так вот, я реально не пойму, зачем это нужно. 50% работы верстальщика html теряется безрезультатно, т.к. в друпале просто не та структура тегов, которые предусмотрел верстальщик, и проще переверстать css, чем переопределять кучу шаблонов для вывода нужных верстальщику тегов.

Горазно оптимальнее выглядит вариант выдачи задания...

Размышляя о том, каким образом наладить постоянное увеличение объема знаний о друпале, я столкнулся со следующими двумя проблеммами:

  1. Пустое изучение нового (например, друпал-приёмов, или возможностей каких-либо модулей) малополезно без практического применения этих знаний;
  2. При практической необходимости решить какую-то задачу обычно время сильно ограничено, и часто нет возможности досконально разобраться в проблеме и решить её наилучшим образом (ограничение по времени выполнения из-за сроков)

В результате получаем замкнутый круг - новое изучать не выгодно...

  1. Прочитать readme модуля, его страницу проекта на друпал.орг
  2. Чётко сформулировать свою проблему, записать её.
  3. Бегло посмотреть выдачу гугла по поисковым запросам, связанным с проблемой. Не отвлекаться на соседние темы, не углубляться в бесполезный трёп. На просмотр гугла - максимум 10 минут.
  4. Подумать, как бы я пофиксил проблему, если бы был разработчиком модуля. Залезть в код модуля/ядра и разобраться, как и что вызывается относительно нашей проблемы. Решить проблему как-нибудь.
  5. Решить проблему правильно.
  6. Записать краткую статью о решении в...

Оказывается, в Drupal 7 уже нельзя, как раньше, просто написать
return array('node' => $node); и он бы сохранил все изменения, сделанные нами через php-код; в Drupal 7 так делать нельзя, еще не доработали эту фишку (http://drupal.org...

При использовании Rules логично было бы предположить, что после выполнения action "Create new node" в последующих action'ах мы бы смогли использовать nid созданной ноды. Оказывается, это не так.
Видимо до конца выполнения правила нода фактически еще не создана, и nid получить принципиально невозможно, даже если специально добавить action "Сохранить entity".
Не тратьте время на поиск решения, по всей видимости его просто нет. Просто включайте php-фильтр и фигачьте ноды из него.
Ссылки по теме:
...

http://upgrade.boombatower.com/tools/sql/inline

Конечно, его стоит использовать только для проверки себя пока учишься drupal-7 синтаксису или в тупиковых случаях - если привыкнуть юзать постоянно, это будет потерей времени.

Нужно использовать 'file path' и 'file' для подключения страниц модуля user в хуке hook_menu:

$items['account'] = array(
    'title' => t('Account details'),...

В Drupal 7 wysywig привязан к формату ввода, и теперь в form api добавлен новый элемент 'text_format' - текстовое поле с форматом ввода:

  $form['comment'] = array(
    '#type' => 'text_format',...

Совсем не обязательно ставить новые модуля, такие как MIME mail или HTMLmail - достаточно просто изменить header письма. Внимание - если будете использовать хук _mail - изменения header не поможет! Только так, как я написал ниже:

    $params['account'] = $usr;
    $data =...
  if (module_exists('token')) {
    $form['token_help'] = array(
      '#title' => t...

Страницы