Powiązane wpisy poprzez kategorie

Filed under:

Kod PHP ze strony http://drupal.org/node/855476

Przepis jak za pomocą Views 2 i Drupala 6 stworzyć blok z powiązanymi zawartościami. W bloku będą się wyświetlały tytuły zawartości, które są w tej samej kategorii (taxonomia) co aktualnie przeglądany wpis.

  • dodaj nowy widok, typ segment, (node)
  • dodaj podgląd BLOK
  • dodaj pole - segment: tytuł, (node: title)

Teraz dodaj argument, odpowiedzialny za to, że w bloku wyświetlą się tytuły wpisów tej samej kategorii co przeglądany:

  • argument Taksonomia: ID wyrażenia Działanie podjęte gdy brak argumentu: Dostarcz domyślny argument: Kod PHP: 

    $node = node_load(arg(1));
    if($node){
    foreach($node->taxonomy as $term){
    /* wpisz id slownika vid == 'idslownika' */
    if($term->vid == '2'){
    $status = 'TRUE';
    $terms[] = $term->tid;
    }
    }
    if($status == 'TRUE'){
      return implode('+', $terms);
    } else { return; }
    } else {
    return; }

     

  • zaznacz przy: Pozwól na wiele wyrażeń dla argumentu.
  • zaznacz przy: Usuń duplikaty.

Dodaj drugi argument żeby w bloku nie wyświetlał się tytuł aktualnie przeglądanej zawartości (bo po co:)

  • dodaj argument Segment: NID Działanie podjęte gdy brak argumentu: Dostarcz domyślny argument: ID segmentu z URLa.
  • zaznacz przy Wyklucz argument

Po wszystkim zapisz Widok i ustaw blok w którymś z regionów i sprawdź czy działa :-)