【问题标题】:how to override front page node tpl - drupal如何覆盖首页节点 tpl - drupal
【发布时间】:2012-09-04 17:34:45
【问题描述】:

如何覆盖drupal首页node.tpl文件?我尝试了各种

   node--front.tpl.php
   page--node--front.tpl.php
   page--front--node.tpl.php

但它不起作用。

覆盖主页节点的文件名是什么? (我在 drupal 7 工作)

【问题讨论】:

    标签: drupal drupal-7


    【解决方案1】:

    您可以将此功能添加到主题template.php中

       function customethemename_preprocess_node ( &$vars ) {
    
            if ($vars["is_front"]) {
               $vars["theme_hook_suggestions"][] = "node__front";
            }  
        }
    

    然后就可以分页page--front.tpl.php

    解决问题

    【讨论】:

      【解决方案2】:

      应该是page--front.tpl.php

      此外,请确保您的主题的层次结构中有前体(例如page.tpl.php

      【讨论】:

        【解决方案3】:

        我建议通过将特定的内容节点设置为首页来解决此问题。

        http://www.inmotionhosting.com/support/edu/drupal-7/homepage/change-front-page

        然后我会使用特定的节点 ID 模板。

        node--[insert id here].tpl.phpnode--1.tpl.php

        你需要做两件事才能让它起作用:

        1. 确保您的主题文件夹中有原始 node.tpl.php 文件的副本(否则将不会拾取被覆盖的模板文件)。
        2. 清除 Drupal 的缓存

        【讨论】:

          【解决方案4】:

          无需手动开发首页,只需通过浏览量或其他方式创建首页并将其设置为首页:

          www.yoursite.com/?q=admin/config/site-information
          

          【讨论】:

            【解决方案5】:

            以下步骤解决了我在 Drupal 7 中创建自定义首页的问题。

            1. 创建文件:page--front.tpl.php。注意两个连字符而不是 一。
            2. 清除缓存:配置>>开发>>性能>> 清除所有缓存

            【讨论】:

              【解决方案6】:

              我认为最好的解决方案是使用首页 nid

              function YOURTHEME_preprocess_node ( &$vars ) {
              list(, $frontpage_nid) = explode('/', drupal_get_normal_path(variable_get('site_frontpage', 'node')));
              
                if ($vars['node']->nid == $frontpage_nid) {
                  $vars['theme_hook_suggestions'][] = "node__frontpage";
                } 
              }
              

              因为

              if ($vars["is_front"]) {
                  $vars["theme_hook_suggestions"][] = "node__front";
              }
              

              为首页中的所有节点添加主题建议,而不仅仅是首页节点

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2014-05-31
                • 2022-11-11
                • 2019-08-30
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多