Аргументы Views (вывод блока дочерних терминов на странице родительского термина таксономии) - РЕШЕНО

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

Аватар пользователя seryak seryak 4 ноября 2011 в 16:18

Кто нибудь может объяснить работу аргументов Views на конкретном примере - Вывод блока дочерних терминов на странице родительского термина.
Получилось вывести блок список последних нод в зависимости от термина, а дочерние термины ни как не могу.
Если есть возможность и время обьяснить, можно через скайп : misha-seryak

ВложениеРазмер
Иконка изображения doska.vitrina.pro-admin-build-views-edit-subtermins.png155.92 КБ

Комментарии

Аватар пользователя seryak seryak 4 ноября 2011 в 20:04

Решено
В аргументах вставил php-код по умолчанию :
return(arg(2));
Обьясните почему аргумент не работает если указать ID публикации из URL ?

Аватар пользователя Aviko Aviko 1 марта 2012 в 19:08

seryak wrote:
Решено
В аргументах вставил php-код по умолчанию :
return(arg(2));
Обьясните почему аргумент не работает если указать ID публикации из URL ?

Поясните плз по поводу остальных настроек, у меня та же потребность - на странице термина вывести его подтермины.

Аватар пользователя ksannaa ksannaa 22 июня 2013 в 23:35

Может кому пригодится - вывод подкатегорий в Views на странице термина

Это вставить в заголовок Views (текст - php)

$vid = 1; // id словаря
$arg_pos = 2; // номер позиции аргумента, в нашем случает 1
$cols = 3; // кол-во столбцов для отображения
$show_count = TRUE; // показывать или нет кол-во нод в терминах.

if (is_numeric(arg($arg_pos))) {
$tid = arg($arg_pos);

$maincategory = taxonomy_get_term($tid, $vid);
print $maincategory->description;

$terms = taxonomy_get_children($tid, $vid);

if (!empty($terms)) {

$output = '

';
$count = 0;
$total = count($terms);

foreach ($terms as $tid => $term) {
if ($count % $cols == 0) {
$output .= '

';
}

$item = l($term->name, taxonomy_term_path($term));
if ($show_count) {
$count_nodes = taxonomy_term_count_nodes($term->tid);
$item .= ($count_nodes) ? " ($count_nodes)" : " (0)";
}
$item2 = l($term->description, taxonomy_term_path($term));

$count++;
if ($file = uc_catalog_image_load($term->tid)) {
if (module_exists('imagecache')) {
$output2 = l(theme('imagecache', 'uc_category', $file->filepath), taxonomy_term_path($term), array('html' => TRUE));
}
else {
$output2 = l(theme('image', $file->filepath), taxonomy_term_path($term), array('html' => TRUE));
}
}
$output .= '

';
if ($count % $cols == 0 || $count == $total) {
$output .= '

';
}
}
$output .= '

'. $item .'
Описание: '. $item2 .'
'. $output2 .'

';
return $output;
}
}
?>

(Не нажимается у меня тут в редакторе вставить код)