在 Drupal 中向视图模板文件添加条件
Adding conditions to a view template file in Drupal
我需要向硬编码到 Drupal 7 主题模板文件中的按钮添加条件。我希望 'compare' 按钮仅出现在附加了某些分类术语的产品的节点页面上。我想,它可以用一个简单的 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 文件中放置操作按钮的部分。我希望第二个,比较按钮只出现在具有特定分类术语的节点上。
提前致谢!
胡巴
您可以使用以下代码。
<?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”替换为您的 tids 列表。
我需要向硬编码到 Drupal 7 主题模板文件中的按钮添加条件。我希望 'compare' 按钮仅出现在附加了某些分类术语的产品的节点页面上。我想,它可以用一个简单的 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 文件中放置操作按钮的部分。我希望第二个,比较按钮只出现在具有特定分类术语的节点上。
提前致谢!
胡巴
您可以使用以下代码。
<?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”替换为您的 tids 列表。