Господа, помогите. Сайт журнала. Создаю два типа материалов статья и содержание (выпуск) журнала. Когда создаю статью - указываю к какому номеру журнала она относится - поле CCK Node reference - в нем выбираю из списка созданных журналов. Таким образом содержание формируется автоматически. Как сделать чтобы в поле выбора номера журнала по умолчанию стоял последний номер? Т.е. последняя по дате нода типа содержание? Я так понимаю надо ввести PHP код в Default value. Но так как я не программист, то будьте добренькими, подскажите заветный кодик?
Комментарии
если неохота программировать, подключите Views, сортированный по убыванию даты, хоть и не будет по умолчанию, затем в самом вверху списка.
Чето не получается: код пишу
return db_result(db_query_range('select n.nid from {node} n where n.type=journal AND n.status=1 ORDER BY n.created DESC', 0, 1));
в ответ:
* The default value PHP code returned an incorrect value.
Expected format:
return array(
nid' => value for nid),0 => array('
// You'll usually want to stop here. Provide more values
// if you want your 'default value' to be multi-valued:
1 => array('nid' => value for nid),
2 => ...
);
Returned value:
Во-первых Вы убрали кавычки, во-вторых:
return array(array('nid' => $nid ));
двойные кавычки почему убираем на journal, будьте внимательны.
Забыл этот массив на возврат, тогда вот так:
$nid = db_result(db_query_range('select n.nid from {node} n where n.type="journal" AND n.status=1 ORDER BY n.created DESC', 0, 1));
$result[0] = array('nid'=>$nid);
return $result;
О ES!!! Знание - великая сила! Спасибо!
Есть модуль
http://drupal.org/project/nodereference_url
Он позволяет сделать например внутри "ноды-номера журнала" кнопку "Добавить статью" . В этом случае ничего выбирать не придется.
Oleksa@drupal.org
Это конечно неплохо, но последнее время стараюсь минимизировать количество модулей
Каким образом? Бездумно отказываться от модулей в строну сниппетов, хаков в теме и т.д. - не очень хорошая идея, ведущая в сторону повышения нагрузки.