Вывод terms конкретного словаря... спецы, плиз хэлп!

Главные вкладки

Аватар пользователя clubwave.ru clubwave.ru 13 марта 2007 в 23:31

Если записать следующий код в template.php :

function get_node_vid_term_links($node,$vid) {
$links = array();
if (array_key_exists('taxonomy', $node)) {
foreach ($node->taxonomy as $term) {
if ($term->vid == $vid) {
$t_links[] = l($term->name,taxonomy_term_path($term), array('rel' => 'tag', 'title' => strip_tags($term->description)));
}
}
}
$links = theme('links', $t_links);
return $links;
}

то следующий код в node.tpl.php -

<?php print get_node_vid_term_links($node,6) ?>

выведет внутри ноды список категорий из словаря с id=6

..

всё это работает в друпал 4.7 а вот в 5-й версии не работает!!

подскажите,что изменить в данном коде, чтобы такая функция заработала в друпале 5?

Комментарии

Аватар пользователя clubwave.ru clubwave.ru 20 марта 2007 в 10:49

итак.. решение найдено:

<?php
function get_node_vid_term_links($node,$vid) {
$links = array();
if (array_key_exists('taxonomy', $node)) {
foreach ($node->taxonomy as $term) {
if ($term->vid == $vid) {
$t_links['taxonomy_term_'. $term->tid] = array(
'title' => $term->name,
'href' => taxonomy_term_path($term),
'attributes' => array('rel' => 'tag' ,'title' => strip_tags($term->description)));
}
}
}
$links = theme('links', $t_links);
return $links;
}
?>

Аватар пользователя clubwave.ru clubwave.ru 2 апреля 2007 в 11:03

<?php
function get_node_vid_term_links($node,$vid) {
$links = array();
if (array_key_exists('taxonomy', $node)) {
foreach ($node->taxonomy as $term) {
if ($term->vid == $vid) {
$t_links['taxonomy_term_'. $term->tid] = array(
'title' => $term->name,
'href' => taxonomy_term_path($term),
'attributes' => array('rel' => 'tag' ,'title' => strip_tags($term->description)));
}
}
}
$links = theme('links', $t_links);
return $links;
}
?>

приведённое выше нужно вставить в template.php

а следующим кодом выводятся термы заданного словаря:

<?php
print get_node_vid_term_links($node,6)
?>

циферка в конце означает id словаря..

Аватар пользователя clubwave.ru clubwave.ru 2 апреля 2007 в 13:40

не проще... тут мы просто новую функцию добавляем, а там большим кодом выводим, который либо не выводит, либо запрос лишний делает.. вобщем показалось что так проще..