在Drupal中向视图模板文件添加条件

时间:2015-09-07 11:13:28

标签: drupal drupal-7 drupal-taxonomy drupal-templates

我需要在Drupal 7主题中的硬编码到模板文件中的按钮中添加一个条件。我希望'比较'按钮仅显示在附加了某些分类术语的产品的节点页面上。我想,它可以通过简单的IF完成,但我不是开发人员,只知道PHP语法的基础知识,所以如果有人能详细描述如何实现解决方案,我将非常感激,甚至可以提供一小段代码,我可以自定义并粘贴到正确的位置!

<div class="actions">
    <?php print flag_create_link('wishlist', $node->nid); ?>
    <?php print flag_create_link('compare', $node->nid); ?>
  </div><!-- .actions -->
</div>

这是节点 - product.tpl.php文件代码中的部分,用于显示操作按钮。我想第二个,比较按钮仅出现在具有某些分类术语的节点上。

提前谢谢!

虎霸

1 个答案:

答案 0 :(得分:1)

您可以使用以下代码。

<?php
  $display_compare = FALSE; // don't display by default
  $tids = array(1, 2, 3); // array of certain taxonomy terms' tids

  foreach ($node->TERM_FIELD_NAME[LANGUAGE_NONE] as $delta => $term) {
    if (in_array($term['tid'], $tids)) {
      $display_compare = TRUE; // display if node has at least one of specified terms
      break;
    }
  }

  if ($display_compare) {
    print flag_create_link('compare', $node->nid);
  }
?>

请不要忘记将“TERM_FIELD_NAME”替换为您的字段名称,将“1,2,3”替换为您的提示列表。