Come ottengo il nome del termine di tassonomia del termine di tassonomia corrente page.tpl.php?


11

Sono su d7. Sto cercando di ottenere il nome del termine tassonomia della pagina di tassonomia in cui mi trovo. Dato che non sono su una pagina "nodo", non riesco a ottenerlo da $ node-> tid. Cosa dovrei fare? Grazie.

Risposte:


23

Provare..

http://api.drupal.org/api/drupal/modules--taxonomy--taxonomy.module/function/taxonomy_term_load/7

$term = taxonomy_term_load(arg(2));
$title = $term->name;

arg (2) dovrebbe restituire la tid della pagina della tassonomia (tassonomia / termine / tid).


Grazie per la risposta rapida. Ho provato il tuo metodo, ma sto riscontrando questo errore Notice: Trying to get property of non-object in include() (line 79 of {my site}/templates/page.tpl.php)e non funziona. :(
oobie11,

Cosa print_r(arg())mostra?
mpdonadio

Array ([0] => taxonomy [1] => term [2] => 1920)
oobie11

capito, spiegherò di seguito
oobie11

6

L'ho capito, ecco cosa ho fatto:

<?php
$termid = arg(2);
$term = taxonomy_term_load($termid);
$title = $term->name;
?>

Grazie @Kevin per il tuo aiuto.


+1 per il salvataggio della tassonomia-id-termine è una variabile separata. Segue il principio KISS (almeno dal mio punto di vista).
Bhavik Shah,

Funziona perfettamente, mi ci è voluto un po 'di tempo per trovare una risposta corretta, quindi grazie.
JDavies,

-4

Invece di usare taxonomy_term_load () che non funziona bene ogni volta, puoi chiamare:

function get_tag_name($tid) {
    $query = db_select('taxonomy_term_data', 't');
    $query
            ->condition('t.tid', $tid, '=')
            ->fields('t', array('tid', 'name'));
    $result = $query->execute();

    foreach ($result as $row) {
        return $row->name;
    }
}
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.