Archive for Апрель, 2012



20
Апр

Drupal: отображение блока только на определенных терминах и нодах

Данная записка больше сделана для меня самого. Но если кому-то пригодится буду только рад))

<?php 
$match = FALSE;
$parent_tid = '14';
 
//work
if (arg(0) == 'catalog')
    return TRUE; 
    
if (arg(0) == 'node' && is_numeric(arg(1))) {
    $nid = arg(1);
    $node = node_load(array('nid' => $nid));
    $terms = taxonomy_node_get_terms($node);
    foreach($terms as $term){
        $parents = taxonomy_get_parents_all($term->tid);
        foreach($parents as $parent){
            if ($parent->tid == $parent_tid)
            return TRUE;
        }
    }
  }
 
// work
if ((arg(0) == 'taxonomy') && (arg(1) == 'term') && is_numeric(arg(2)) && ($term = taxonomy_get_term(arg(2)))) {
        $parents = taxonomy_get_parents_all(arg(2));
        foreach($parents as $parent){
            if ($parent->tid == $parent_tid)
            return TRUE;
        }
}
return $match;
?>