Drupal中的分类(Taxonomy)用法 (转)

 1、$term=taxonomy_get_term($tid);


得到$term对象

Term_data表中的所有数据

$term->vid,

$term->name,

$term->decription

 

2$vocabulary = taxonomy_vocabulary_load($vid);

得到$vocabulary对象

Vocabulary表中的所有数据及此vid对应的node type

$vocabulary->name,

$vocabulary->decription,

$vocabulary->vid,

$vocabulary->nodes   (注:得到node type的数组)

 

3$term = taxonomy_get_term_by_name($name)

通过分类名字,得到此分类的$term对象,取得Term_data表中的所有数据

1$term对象

 

4taxonomy_select_nodes($tids = array(), $operator = 'or', $depth = 0, $pager = TRUE, $order = 'n.sticky DESC, n.created DESC')

通过tid数组得到此数组下的所有文章的nidtitlecreatedsticky

$sql = 'SELECT DISTINCT(n.nid), n.sticky, n.title, n.created FROM {node} n INNER JOIN {term_node} tn ON n.vid = tn.vid WHERE tn.tid IN (' . $placeholders . ') AND n.status = 1 ORDER BY ' . $order;  (注:DISTINCT:不同的)

$tids = array(5,6);

$results = taxonomy_select_nodes($tids,'and');

$titles = array();

While($data = db_fetch_object($results)){

$titles[] = $data->title;

}

5taxonomy_get_vocabularies($type = NULL)

$typenode type blog,返回此node type所有的分类对象(即:return an array of vocabulary objects )  vocabulary对象和2一样

 

6、taxonomy_node_get_terms($node,$key);

$node$nid,$key默认为$tid

取得一个节点的所有分类

Return an array of arrays ,keyed by $key

7、taxonomy_node_get_terms_by_vocabulary($node,$vid,$key);

详解如6

 

8taxonomy_get_parents($tid,$key)

Return an associative array of term objects,keyed by $key

9、taxonomy_get_parents_all($tid)

The function return an array of term objects

10、taxonomy_get_children($tid,$vid,$key)

posted @ 2014-02-18 18:23  喵个咪的  阅读(833)  评论(0编辑  收藏  举报