如何覆盖drupal首页node.tpl文件?我尝试了各种
node--front.tpl.php
page--node--front.tpl.php
page--front--node.tpl.php
但它不工作。
覆盖主页节点的文件名是什么?(我在drupal 7中工作)
您可以将此功能添加到主题模板.php
function customethemename_preprocess_node ( &$vars ) {
if ($vars["is_front"]) {
$vars["theme_hook_suggestions"][] = "node__front";
}
}
然后就可以page page--front.tpl.php
它会解决问题
它应该是page--front.tpl.php
此外,请确保您的主题的层次结构中有前体(例如page.tpl.php
)
我建议通过将特定的内容节点设置为首页来解决此问题。
http://www.inmotionhosting.com/support/edu/drupal-7/homepage/change-front-page
然后我会使用特定的节点 ID 模板。
node--[insert id here].tpl.php
IEnode--1.tpl.php
在此之前,您需要做两件事:
无需手动开发首页,只需通过视图或其他创建首页并将其设置为首页:
www.yoursite.com/?q=admin/config/site-information
以下步骤解决了我在 Drupal 7 中创建自定义首页的问题。
我认为最好的解决方案是使用frontpage 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";
}
为frontpage中的所有节点添加主题建议,而不仅仅是frontpage节点