Drupal → Как программно создать ноду с CCK полями

24.07.2010

Добавление ноды типа book с двумя cck полями — field_publisher и field_author:

$node = new stdClass();
$node->title = 'Node title';
$node->body = 'Node body';
$node->type = 'book';
$node->uid = 1;
$node->filter = 1;
$node->status = 1;
$node->comment = 2;
$node->field_publisher[0]['value'] = 'Foo'; // текстовое cck поле field_publisher
$node->field_author[0]['value'] = 'Bar';    // текстовое cck поле field_author

node_save($node);
Написанное актуально для
Drupal 6.x
Похожие записи

Комментарии

Не подскажите как добавить термин таксономии из существующего словаря в ноду?
к примеру $term объект полученный по имени taxonomy_get_term_by_name
$node->taxonomy = $term;
что-то не сработало

Вот так попробуйте:

$terms = taxonomy_get_term_by_name('имя термина');
if (count($terms)) {
  foreach ($terms as $value) {
    $node->taxonomy[$value->tid] = $value;
  }
}

салют
а сориентируете чем заменили node_save в 7-й версии?

как раз встал вопрос о программном создании ноды...

ага, я сегодня тоже нашел, хотя пару дней назад читал вроде бы там же и были только 5 и 6 версии... где-то затупил видимо, спасибо

Павел
15.05.2011, 13:55

Есть пара вопросов.
1) Для поля типа boolean (checkbox) какое значение будет? True/false?
2) Как приложить изображение к ноде (тоже cck-поле)?

Спасибо!

Сергей
19.07.2011, 16:06

Здравствуйте, можете подсказать каким образом сохранить ноду с cck-полями типа node reference?
я правильно мыслю, что такое сработает? (field_noderef собстевеннно поле типа node reference)
$node->field_noderef[0]['value'] = 'test1';
$node->field_noderef[1]['value'] = 'test2';

Сергей
19.07.2011, 16:20

Благодарю за ссылку, но "my english very bad" :) Из того, что понял я сделал вывод, что мой код сработает, не ошибаюсь? проверить пока что проблематично.. :(

php интернационален. там в первом же листинге показано как должно быть

Сергей
19.07.2011, 16:27

я имел ввиду не мог прочитать комментарии :)
а в первом листинге думал человек описал проблему и привел неработающий листинг (пошел брать в руки учебник по английскому языку - нужная вещь)
спасибо за быстрый и качественный ответ!

Гость
02.10.2011, 15:23

Как к node типа book. Указать что она дочерняя ?

Добавить комментарий