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
。