<?php
$block = module_invoke('modules', 'block', 'view', 0);
print $block['title']; //输出区块标题
print $block['content']; //输出区块内容
?>
这里面主要是对module_invoke函数理解和使用,这个函数通过对模块的调用 得到返回的值.
modules:是指模块名
block:这里是指模块中调用的hook,如hook_block, hook_menu, hook_cron等,我们使用的是block
'view', 0这里是hook_block的参数.
如何得到调用的参数:
在区块配置中察看所要调用的区块的链接:如语言转换链接,
/admin/build/block/configure/local/0
那么调用最新用户的参数就是module_invoke('local', 'block', 'view', 1);
得到的$block是包含标题的内容的分别是: $block[‘title’]和$block[‘content’]
此代码可以直接在模板中使用比如(page.tpl.php),亦可在在drupal的后台发布在普通的页面或区块中,
但是要选择输入格式化为php.
module_invoke()
请求一个module 的hook
参数$module 模块的名称
$hook 调用请求的hook 名称
...其他的传入hook里的参数
返回hook返回值。
例子: 调用local 模块里的block值:module_invoke('local','block','view','0');
其实就是调用local_block(‘参数3’,‘参数4’);这个函数而已
参数1:模块名称----local
参数2:hook 名称----block
参数3:相关的hook参数 ---- 这里是view
参数4:也是hook参数---- 这里是 0
这里返回的是一个数组。
$local_block = module_invoke('local','block','view','0');
array();包括 subject 和 content