현재 분류 ​​용어 페이지 page.tpl.php의 분류 용어 이름을 얻으려면 어떻게합니까?


11

D7에 임. 내가있는 분류 페이지의 분류 용어 이름을 얻으려고합니다. Im은 "노드"페이지에 없기 때문에 $ node-> tid로 가져올 수 없습니다. 어떻게해야합니까? 감사.

답변:


23

시험..

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)는 분류 페이지의 tid (taxonomy / term / tid)를 반환해야합니다.


빠른 답변 감사합니다. 귀하의 방법을 시도했지만이 오류가 발생 Notice: Trying to get property of non-object in include() (line 79 of {my site}/templates/page.tpl.php)하여 작동하지 않습니다. :(
oobie11

무엇을 print_r(arg())보여줍니까?
mpdonadio

배열 ([0] => 분류법 [1] => 용어 [2] => 1920)
oobie11

그것을 알아 내고, 아래에서 설명하겠습니다
oobie11

6

나는 내가 한 일을 알아 냈습니다.

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

도움을 주신 @Kevin에게 감사합니다.


taxonomy-term-id 저장을위한 +1은 별도의 변수입니다. 그것은 KISS 원칙을 따릅니다 (제 시점에서 가장 중요합니다).
Bhavik Shah

완벽하게 작동합니다. 정답을 찾기 위해 시간이 조금 걸렸습니다. 감사합니다.
JDavies

-4

매번 제대로 작동하지 않는 taxonomy_term_load ()를 사용하는 대신 다음을 호출 할 수 있습니다.

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;
    }
}
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.