drupal - 自定义 page-xxxx.tpl.php 不起作用

标签 drupal drupal-7 drupal-theming

我有一个名为 page--news.tpl.php 的页面,它是我为新闻页面创建的。但是在我清除缓存后,页面仍然没有使用,而drupal使用原始的page.tpl.php。有什么解决办法吗?

最佳答案

另一种方法是通过预处理 Hook 和几行代码。 事情是这样的

function <module_name>_preprocess_page(&$variables) {
    if (isset($variables['node'])) {
        $variables['theme_hook_suggestions'][] = 'page__'.$variables['node']->type;
    }
}

假设您的节点类型为“news”,那么 tpl 应该类似于“page--news.tpl.php”,上面的代码将处理其余部分。

关于drupal - 自定义 page-xxxx.tpl.php 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11226362/

相关文章:

php - 我似乎找不到将 CSS 添加到 Drupal 模块的方法

css - 在 Drupal 7 中为 Md Megamenu 自定义样式

php - Drupal - 如何注册所有用户(甚至匿名用户)都可以访问的菜单回调?

php - 以编程方式监视网页

javascript - 使用 Drupal Leaflet 模块更改 Leaflet map 缩放控制样式

css - main_menu 变量在 drupal 主题 Zen 中始终为空

drupal-theming - 在多个 TPL 文件中包含相同 HTML 的“智能”方式?

symfony - Twig:如何检查字段的内部 html 内容

模块和结构上的drupal白屏死机

MySQL 性能 - LEFT JOIN/HAVING 与子查询