0
我在一个节点中,我使用“引用”模块创建了一个字段,以将一种内容类型与另一种内容类型相关联。现在... 2内容类型是“练习”(标题为节点,说明ecc ...)和“TECHNOLOGY”,一个只有徽标图像的节点。我想将相关标识显示在节点 - practise.tpl.php中。我如何在DP7中做到这一点?如何在Drupal 7中使用nodeload打印引用节点字段?
我在一个节点中,我使用“引用”模块创建了一个字段,以将一种内容类型与另一种内容类型相关联。现在... 2内容类型是“练习”(标题为节点,说明ecc ...)和“TECHNOLOGY”,一个只有徽标图像的节点。我想将相关标识显示在节点 - practise.tpl.php中。我如何在DP7中做到这一点?如何在Drupal 7中使用nodeload打印引用节点字段?
我不会直接在模板文件中完成它,而是在主题的template.php文件中实现hook_preprocess_node
以将徽标作为变量传递。该逻辑是相同的两种方式:
function mytheme_preprocess_node(&$vars) {
$node = $vars['node'];
if ($node->type == 'practise') {
$related_node_nid = $node->field_related_field_name['und'][0]['nid'];
$related_node = node_load($related_node_nid);
$logos = '';
foreach ($related_node->field_logo_field_name['und'] as $img) {
$logos .= theme('image', array('path' => $img['uri'], 'alt' => 'Alt text'));
}
$vars['related_logos'] = $logos;
}
}
然后在你的template.php文件中,你将有可变$logos
其中将包含您在preprocess
功能建立了标志的列表。显然,您可以定制HTML以满足您的需求,并且您需要交换正确的字段名称field_related_field_name
和field_logo_field_name
。