针对特定节点类型的Drupal 7 comment.tpl.php覆盖不起作用

时间:2011-03-17 01:13:08

标签: drupal drupal-templates drupal-comments

我创建了一个评论 - track.tpl.php文件,以便对我的“track”类型节点的注释进行主题化,但我无法让Drupal使用它。它一直使用我的themename / comment.tpl.php文件。我确保清除缓存,我还设置Devel模块在每次加载时重建主题注册表,但它只是不想使用我的自定义主题文件。有人有什么想法吗?

3 个答案:

答案 0 :(得分:3)

对于Drupal 7,在主题文件夹中创建一个新文件" comment - node- [type] .tpl.php"。 在你的情况下,文件名应为" comment - node-track.tpl.php"

答案 1 :(得分:2)

D7中似乎缺少相应的模板建议。请参阅:D7D6。不确定为什么以及如果这是一个错误,但你可以实现yourtheme_preprocess_comment()并自己添加以下行。

<?php
$variables['template_files'][] = 'comment-' . $variables['node']->type;
?>

答案 2 :(得分:2)

对于Drupal 7:

comment--node-YOURNAMECONTENTTYPE.tpl.php

如果您要覆盖名称为comment.tpl.php的内容类型中的article, 你需要:

  1. 从核心Drupal 7复制原始文件模板 comment.tpl.php
  2. 将其粘贴到主题文件夹
  3. 制作副本
  4. 将副本重命名为 comment--node-article.tpl.php