Drupal 7如何覆盖特定内容类型的page.tpl?

标签 drupal drupal-7 drupal-theming

我想为特定的内容类型覆盖 page.tpl.php。
我已经尝试过这些东西,对我没有任何作用。

  • page--article.tpl.php
  • page--node--article.tpl.php
  • page--node--type--article.tpl.php
  • page--node-type--article.tpl.php
  • page--type--article.tpl.php

  • 但是当我按数字定位特定节点时,即 page--node--8.tpl.php它工作得很好。
    我认为 page--article.tpl.php应该工作,但我不知道为什么它不工作。

    如果我命名错误,请告诉我。以及如何调试这些东西。我听说我可以使用 Devel 模块,但对此一无所知。对正确方向的轻微提示将不胜感激。

    提前致谢

    最佳答案

    你必须确保你的模板可以处理这个......我在这里得到了一个对我有用的代码片段:

    http://drupal.org/node/1089656#comment-4426790

    <?php
    function themeName_preprocess_page(&$vars, $hook) {
      if (isset($vars['node'])) {
        // If the node type is "blog_madness" the template suggestion will be "page--blog-madness.tpl.php".
        $vars['theme_hook_suggestions'][] = 'page__'. $vars['node']->type;
      }
    }
    ?>
    

    关于Drupal 7如何覆盖特定内容类型的page.tpl?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11193910/

    相关文章:

    css - 在 Drupal 7 的页面中定位元素

    Drupal 7,不确定如何从查询数据中正确主题化我的输出

    drupal - 如何更改 upload.module 生成的内容的#weight?

    android - 从 Android/Blackberry 进行信用卡支付

    drupal-7 - 如何在 Hostgator 服务器上安装 drush

    php - Drupal如何在提交表单后重定向节点表单

    javascript - 从较低的 div 获取背景图像 url 以将它们添加到较高的 div

    css - Drupal 7 事件菜单样式

    php - 安装 Drupal 时 RedHat/Centos 7.5 出现 "Fatal error: Allowed memory size of"错误

    Drupal 更新失败