Как стать автором
Обновить

Расширяем hook_node_info() для настройки комментариев, отображения и прочих вещей

Время на прочтение2 мин
Количество просмотров1.1K
Думаю, многие сталкиваются с подобной проблемой: создаешь с помощью hook_node_info() новый тип контента, но все равно приходится лезть в интерфейс и настраивать в ручную такие параметры, как отображение комментариев, настройки публикации, отображение даты/автора и прочие вещи, которые hook_node_info() не охватывает. А каждый раз использовать костыли типа variable_set — неудобно.

Мое терпение таки-лопнуло, и пара часов была потрачена на благо человечества: результатом стал небольшой модуль nodetools.

Все, что он делает, это позволяет в hook_node_info указывать дополнительные свойства создаваемого типа контента.
Его использование выглядит следующим образом (подробно с комментариями):

<?php
function hook_node_info() {
  return array(
    'customtype' => array(
      'name' => t('Custom node type'),
      'base' => 'custom',
      ...
      // Extra properties
      'node-preview' => 0,
      'node-options' => array('status', 'promote', 'sticky', 'revision'),
      'node-submitted' => 0,
      'comment' => array(
        'status' => 2,
        'default-mode' => 1,
        'anonymous' => 1,
        'default-per-page' => 50,
        'form-location' => 1,
        'preview' => 0,
        'subject-field' => 0,
      ),
    ),
  );
}

* This source code was highlighted with Source Code Highlighter.

Уверен, многим пригодится :)
Теги:
Хабы:
Всего голосов 8: ↑6 и ↓2+4
Комментарии4

Публикации