创建安装配置文件,需要在特定页面上显示一些自定义块
在profile_name。Install: profile_name_install():
$values = array(
array(
'module' => 'my_custom_module',
'delta' => 'my_block',
'theme' => $default_theme,
'status' => 1,
'weight' => 0,
'region' => 'help',
'pages' => "admin/page1nadmin/page2nadmin/page3",
'cache' => 0,
),
);
$query = db_insert('block')->fields(array('module', 'delta', 'theme', 'status', 'weight', 'region', 'pages', 'cache'));
foreach ($values as $record) {
$query->values($record);
}
$query->execute();
安装后,这些页面在块配置设置为'所有页面除了那些列出的',但我需要他们是在'只有列出的页面';
我应该在$values数组中添加什么额外的值?它是正确的方式来设置许多页与n分隔符?
根据hook_block_info()
文档,您需要添加visibility
:
array(
'module' => 'my_custom_module',
'delta' => 'my_block',
'theme' => $default_theme,
'status' => 1,
'weight' => 0,
'region' => 'help',
'pages' => "admin/page1nadmin/page2nadmin/page3",
'cache' => 0,
'visibility' => BLOCK_VISIBILITY_LISTED
),