我正在尝试根据内容类型对节点页面进行主题化。在这里,我尝试按照http://drupal.org/node/249726中的说明进行操作。
我所做的,将 node.tpl.php 文件复制到我的主题目录。将其重命名为 page-node-mycontenttype.tpl.php 并在我的模板文件中编写预处理函数,如上面的链接所示。
显然发现它只显示节点内容,但不显示常见的布局元素(HTML)(在 page.tpl.php 中定义的徽标、页眉、页脚和侧边栏等)。
那么我是否有必要在 page-node-mycontenttype.tpl.php 中再次定义相同的通用布局元素(HTML)(那些在 page.tpl.php 中定义)?
如果是这样,那么我必须管理 2 个模板文件。任何 HTML 更改都需要在两个模板文件中进行两次。
有没有更好的方法让页面和节点内容类型都引用公共布局模板文件,只有中间内容区域来自两个不同的文件(页面或节点内容类型)?
您能否建议实现这一目标的常见做法和方法?
注意:确保要根据内容类型覆盖节点模板文件,然后模板文件 node.tpl.php 和 node-[content_type].tpl.php 文件都需要在您的主题目录中。