Wie erhalte ich den Namen des Taxonomiebegriffs des aktuellen Taxonomiebegriffs page.tpl.php?

11

Ich bin auf d7. Ich versuche, den Taxonomiebegriffnamen der Taxonomieseite zu erhalten, auf der ich mich befinde. Da ich nicht auf einer "Knoten" -Seite bin, kann ich sie nicht über die $ node-> tid erhalten. Was soll ich machen? Vielen Dank.

oobie11
quelle

Antworten:

23

Versuchen..

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) sollte die tid der Taxonomieseite (taxonomy / term / tid) zurückgeben.

Kevin
quelle
Danke für die schnelle Antwort. Ich habe Ihre Methode ausprobiert, aber ich erhalte diesen Fehler Notice: Trying to get property of non-object in include() (line 79 of {my site}/templates/page.tpl.php)und er funktioniert nicht. :(
oobie11
Was print_r(arg())zeigt?
mpdonadio
Array ([0] => Taxonomie [1] => Term [2] => 1920)
oobie11
Ich habe
6

Ich habe es herausgefunden, hier ist was ich getan habe:

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

Vielen Dank an Kevin für Ihre Hilfe.

oobie11
quelle
+1 zum Speichern der Taxonomie-Term-ID ist eine separate Variable. Es folgt dem KISS-Prinzip (zumindest aus meiner Sicht).
Bhavik Shah
Funktioniert perfekt, ich habe eine Weile gebraucht, um eine richtige Antwort zu finden, also danke.
JDavies
-4

Anstatt taxonomy_term_load () zu verwenden, das nicht jedes Mal gut funktioniert, können Sie Folgendes aufrufen:

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;
    }
}
MilanG
quelle