swa*_*wan 2 drupal drupal-blocks
这是我用drupal 7玩过的一周.使用drupal 6,我曾经能够在任何地方放置(登录)块:
$block = (object) module_invoke($module, 'block', 'view', $delta);
$block->module = $module;
$block->delta = $delta;
return theme('block', $block);
Run Code Online (Sandbox Code Playgroud)
或这个:
$block = module_invoke('user', 'block', 'view', 0);
$vars['login'] = $block['content'];
Run Code Online (Sandbox Code Playgroud)
我更改了Drupal 7的delta'0':
$block = module_invoke('user', 'block', 'view', 'login'); // I have changed from 0 to 'login' for delta at drupal 7
$vars['login'] = $block['content'];
Run Code Online (Sandbox Code Playgroud)
两者都会导致致命错误.使用module_invoke我不知道的任何变化?http://api.drupal.org/api/drupal/includes--module.inc/function/module_invoke/7没有具体的变化
任何提示都将非常感激.
hook_block($ op)在Drupal 7中更改为hook_block_op().尝试:
$block = module_invoke('user', 'block_view', 'login');
$vars['login'] = $block['content'];
Run Code Online (Sandbox Code Playgroud)
或者为什么不直接使用表单:
$vars['login'] = drupal_get_form('user_login_block');
Run Code Online (Sandbox Code Playgroud)