Добавьте дополнительное поле в тип контента контента, используя хук без CCK - PullRequest
1 голос
/ 27 февраля 2011

Я хочу добавить дополнительное поле в тип контента контента с помощью ловушки, я не хочу использовать CCK, потому что пытаюсь что-то другое.

Скажите, пожалуйста, несколько советов, используя метод крюка.

Ответы [ 2 ]

4 голосов
/ 27 февраля 2011

Если вы не используете CCK, вам нужно будет создать таблицу базы данных и код, чтобы добавить поле формы, проверить поле формы, захватить данные и сохранить их в своем поле.Я знаю, что cck может быть монстром, но он делает все это для вас.Я был бы рад дать вам больше информации обо всем этом, но это довольно долго

1 голос
/ 21 февраля 2012

Существует множество причин, по которым вы можете захотеть сделать это без CCK или полей, и лучший пример можно найти в модуле node_example в проекте examples , который можно найти по адресу: http://drupalcode.org/project/examples.git/tree/refs/heads/6.x-1.x:/node_example. Вы также можете просмотреть документацию на api.drupal.org .

Короткая версия заключается в том, что вам нужно определить свой собственный тип узла с помощью hook_node_info (), а затем определить все хуки для _load (), _insert (), _update (), _delete (),_access (), _validate () и _view () в дополнение к определению вашей схемы в вашем hook_schema и управлению вашими таблицами самостоятельно.

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

...