将以下代码应用到template.php后,自定义节点模板无法在Drupal 7上运行。例如,node - article.tpl.php
function jstheme_preprocess_page(&$variables) {
if (isset($variables['node']->type)) {
// If the content type's machine name is "my_machine_name" the file
// name will be "page--my-machine-name.tpl.php".
$variables['theme_hook_suggestions'][] = 'page__' . $variables['node']->type;
}
}
如果我删除上面的代码,node - article.tpl.php正在拾取而不是页面 - article.tpl.php
我认为应该选择页面 - article.tpl.php然后是node - article.tpl.php(如果存在的话)。这个假设是错的吗?
答案 0 :(得分:0)
以上代码和您的假设是正确的。我尝试在我的本地使用上面的代码它运行正常,因此它将page--article.tpl.php
作为页面tpl,对于节点tpl,它花了node--article.tpl.php
。
检查步骤: