系统信息:drupal 6 安装,包含大量模块...太多无法列出。
问题:只有某种内容类型不会正确加载它的模板文件。将通过视图显示在这些页面上的一些节点正在进入标记。它们是唯一被加载的内容。此内容依赖的模板文件是 node-event.tpl
目标:加载 page-team.tpl.php
模板建议在template.php中通过预处理以两种方式加载
mytheme_preprocess_page(&$vars, $hook)
从 drupal 5 安装转换而来_phptemplate_variables ()
。
方法一:
if (module_exists('path')) {
$alias = drupal_get_path_alias(str_replace('/edit','',$_GET['q']));
if ($alias != $_GET['q']) {
$template_filename = 'page';
foreach (explode('/', $alias) as $path_part) {
$template_filename = $template_filename . '-' . $path_part;
$vars['template_files'][] = $template_filename;
}
}
}
方法二:
if ($vars['node']->og_groups['0'] || preg_match('/fdl\//',$vars['node']->path) || (preg_match('/og\/manage/',$alias) || preg_match('/og\/invite/',$alias) || preg_match('/og\/users/',$alias)) || (preg_match('/node\/add/',$alias) && $_GET['gids'] != '') || $vars['node']->og_description || (arg(0) == 'user' && is_numeric(arg(1)))) {
$vars['template_files'][] = 'page-team';
}
page-team 是缺少的 tpl,我怀疑上面的代码可能有错误(方法 2)。
我正在尝试使用“fdl”的第一个路径参数为所有页面加载此模板,因此 site.com/fdl 和 fdl 的所有子级。
我知道有很多可能性。但我感觉错误就在这里。谢谢你的尽心帮助。