Наступний код повинен допомогти. Очевидно, вам потрібно буде додати свої 5 блоків як потрібно, але це просто показати, як ви можете додати кілька блоків в один модуль:
function MYMODULE_block_info() {
$blocks = array();
$blocks['myfirstblock'] = array(
'info' => t('My block admin info'),
'status' => 1,
);
$blocks['mysecondblock'] = array(
'info' => t('My second block admin info'),
'status' => 1,
);
return $blocks;
}
function MYMODULE_block_view($delta = '') {
$block = array();
switch ($delta) {
case 'myfirstblock':
$block = array(
'subject' => t('My first block title'),
'content' => t('My first block content'),
);
break;
case 'mysecondblock':
$block = array(
'subject' => t('My second block title'),
'content' => t('My second block content'),
);
break;
}
return $block;
}
Причина status => 1
від hook_block_info()
документів API:
status: (необов'язково) Початкове значення для статусу, включеного блоком. (1 = увімкнено, 0 = відключено). Більшість модулів не надають початкового значення, і будь-яке надане значення може бути змінено користувачем на екрані конфігурації блоку.
Я не впевнений, звідки у вас ідея одного блоку на модуль. Ви можете створити стільки блоків, скільки хочете в модулі.