У меня есть модуль, который реализует пользовательский тип контента через хуки NodeAPI (hook_insert
, hook_update
и т. Д.). Я хочу добавить поле CCK к этому типу контента и заполнить его с помощью вызовов hook_nodeapi, таких как create или update (чтобы показать узлы контента в Views).
Проблема в том, что я не могу получить доступ к полям CCK для этого типа контента. Конечно, он включен на странице «Управление полями», но когда я загружаю любой узел этого типа с модулем Devel, я не вижу атрибута поля (field_flag
) в объекте узла. Я вижу его на вкладке «Dev Render» как часть атрибута «content», например $node->content['field_flag']['#value']
, но если я назначу значение $node->field_flag
или $node->content['field_flag']['#value']
и вызову node_save
, поля CCK не сохранятся. *
Может быть, я должен вызвать какую-то другую функцию для сохранения полей CCK? Или что может быть не так с этой настройкой?