Api 在Drupal 7中以编程方式将视图指定给区域
在安装模块的过程中,我需要将视图指定给某个区域,并从该区域取消指定块。这在UI中需要3秒钟的时间,但必须以编程方式完成 该视图称为“合法页脚”,需要将其分配给区域“页脚”。 类似地,我有一个名为“页脚徽标”的块,它当前位于“页脚”区域,但需要删除 我想我想要hook\u block\u info\u alter,但我不确定它是否适用于视图,API文档中有一条说明,它不能用于取消分配块Api 在Drupal 7中以编程方式将视图指定给区域,api,view,drupal-7,block,region,Api,View,Drupal 7,Block,Region,在安装模块的过程中,我需要将视图指定给某个区域,并从该区域取消指定块。这在UI中需要3秒钟的时间,但必须以编程方式完成 该视图称为“合法页脚”,需要将其分配给区域“页脚”。 类似地,我有一个名为“页脚徽标”的块,它当前位于“页脚”区域,但需要删除 我想我想要hook\u block\u info\u alter,但我不确定它是否适用于视图,API文档中有一条说明,它不能用于取消分配块 我是Drupal新手,我可以很容易地在UI中实现任何我想要的功能,但是我很难使用API。要将块分配给区域,请使用
我是Drupal新手,我可以很容易地在UI中实现任何我想要的功能,但是我很难使用API。要将块分配给区域,请使用数组中的“region”键返回包含该块应分配给的区域名称的信息 例如
function module_block_info() {
$blocks = array();
$blocks[0] = array(
'info' => t('Block Title'),
'region' => 'name-of-the-region', // here is the name of the region
'status' => 1, // 1 if you want the block to be enabled by default
);
return $blocks;
}
您可以使用这样的查询禁用exist块
db_update('block')->fields(array('region' => '', 'status' => 0))->condition('bid', $block_id)->execute();
将$block_id替换为要禁用的块的id
更新:
您可以使用hook\u block\u info\u alter
禁用现有块
function hook_block_info_alter(&$blocks, $theme, $code_blocks) {
// Disable the login block.
$blocks['defining_module']['delta']['status'] = 0;
}
祝你好运