如何从tid获取nid,因此我可以使用node_load
函数,然后使用Field_get_items
来获取特定字段。我首先使用taxonomy_select_node()
,但它给了我与该tid相关的所有节点的nids但我想要特定包的内容(内容类型),所以我只能显示该内容类型的内容。现在我正在使用Entityfieldquery
,这是我的代码:
if(isset($_GET['tid'])){
$id=($_GET['tid']);
$query = new EntityFieldQuery();
$query->entityCondition('entity_type', 'node');
$query->entityCondition('bundle', 'escorts_product');
$query->propertyCondition('status', 1);
$query->fieldCondition('field_description', NULL, $id, '=');
$result = $query->execute();
print "<pre>";print_r($result);
在这里,我想从我的内容类型field_description
获取特定escorts_product
的{{1}},但它为所有tid而不是我在参数中提到的特定数据提供数组结构?
答案 0 :(得分:0)
$query->fieldCondition('field_description', NULL, $id, '=');
行应该像这样更换,它会起作用,$query->fieldCondition('field_your_term_reference_field', tid, $id, '=');
然后你就可以轻松搞定了。
答案 1 :(得分:0)
这对我有用
$termid = array(1); //Where you save term ID(s)
$nids = taxonomy_select_nodes($termid);
$products = array(); //Lets say nodes type is PRODUCT
if (!empty($nids)) {
foreach ($nids as $nid => $value) {
echo $products[$value] = node_load($value)->title; // Echo all the titles of related nodes of current term.
}
}