我已经创建了一个nodequeue并将默认部分中的"Description / Tag“设置为"Entertainment Highlight”,当我单击查看主题:信息时,它有一个样式输出的模板建议
views-view-list.tpl.php
views-view-list--nodequeue-91.tpl.php
views-view-list--entertainment-highlights.tpl.php
views-view-list--default.tpl.php
views-view-list--nodequeue-91--default.tpl.php如果我创建了一个名为views-view-list--nodequeue-91.tpl.php的文件,那么这个文件就能正常工作;如果我把"Description / Tag“改成"Entertainment”,并创建一个views-view-list--entertainment.tpl.php文件,那么这个文件也会被drupal选中,所以这个问题看起来就像是在"Description / Tag“名称中加上了空格
有没有人有任何想法,我需要更新让模板工作。我意识到这可能是一个核心调整,但如果它能处理这样的情况,那将是非常有帮助的。
发布于 2013-05-20 19:32:28
我发现这与Drupal6没有直接关系,而是与我们正在使用的OpenPublish变体有关。
原来在/sites/modules/views/themes/theme.inc (不要与/includes/Theme.inc混淆)中有一个名为_views_theme_functions()的函数,它使用以下内容来确定主题模板的名称
$themes[] = $hook . '__' . preg_replace('/[^a-z0-9]/', '-', strtolower($view->tag));但是,如果检查$themes,可以看到所有非a-z0-9字符都已被下划线而不是短划线替换,因此需要将其修改为
$themes[] = $hook . '__' . preg_replace('/[^a-z0-9]/', '_', strtolower($view->tag));我意识到这是一个核心修正,理想情况下我不会在这里做这个改变。
https://stackoverflow.com/questions/16613140
复制相似问题