Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Drupal6:在view.tpl.php文件中嵌入区域_Drupal_Templates_Drupal 6_Preprocessor_Theming - Fatal编程技术网

Drupal6:在view.tpl.php文件中嵌入区域

Drupal6:在view.tpl.php文件中嵌入区域,drupal,templates,drupal-6,preprocessor,theming,Drupal,Templates,Drupal 6,Preprocessor,Theming,有人知道我如何将一个区域嵌入view.tpl.php文件吗 我在node.tpl.php中很容易实现这一点,方法是在theme\u preprocess\u node()中添加类似的内容: 没问题。但是,显然没有theme\u preprocess\u view()函数,当我尝试将相同的代码片段添加到theme\u preprocess()时,会出现内存错误 致命错误:第42行的/Users/cpharmston/Sites/Projects/Threespot/neh01/includes/d

有人知道我如何将一个区域嵌入view.tpl.php文件吗

我在node.tpl.php中很容易实现这一点,方法是在
theme\u preprocess\u node()
中添加类似的内容:

没问题。但是,显然没有
theme\u preprocess\u view()
函数,当我尝试将相同的代码片段添加到
theme\u preprocess()
时,会出现内存错误

致命错误:第42行的/Users/cpharmston/Sites/Projects/Threespot/neh01/includes/database.mysqli.inc中允许的内存大小为104857600字节(尝试分配523800字节)

我被难住了。有什么想法吗


谢谢

快速而肮脏的方式:您可以将
主题('blocks',[region\u name])
调用直接放入views.tpl.php文件中

虽然预处理函数旨在更好地分离“业务”逻辑和“显示”逻辑,但它们在任何方面都不是必需的,因此您仍然可以按照自己喜欢的方式将自定义代码放入.tpl.php文件中

正确的方式:视图的预处理函数,只是不止一个。查看视图模块的theme.inc文件。在那里,您可以找到视图可能使用的不同模板的不同预处理函数(例如“未格式化”与“表格”与“列表”等)。只需找到与要注入新变量的视图模板相关的变量。

将此变量归档到“DOH!”类别下。我深陷于业务和显示逻辑的分离,以至于忽略了显而易见的东西。谢谢你的帮助:)
$vars['promos'] = theme('blocks', 'promos');