У меня есть страница, которая отображает некоторые данные. Источником данных являются не узлы Drupal, так что Views бесполезен для меня:
function mymodule_main_page($arg1, $arg2, $arg3) {
$results = call_remote_api_and_get_lots_of_results($arg1, $arg2, $arg3);
return theme('mymodule_page', $results, $arg1, $arg2, $arg3);
}
Мой модуль также отображает блок. Целью блока является суммирование результатов, которые были возвращены в содержании главной страницы (например: Количество результатов: X, Количество страниц: Y и т. Д.)
/**
* Implementation of hook_block().
*/
function mymodule_block($op = 'list', $delta = 0, $edit = array()) {
switch ($op) {
case 'view':
if ($delta == 0) {
$block['subject'] = t('Results summary');
$block['content'] = theme('mymodule_results_summary');
}
break;
}
}
Мне нужно избегать генерации результатов снова. Каков наилучший способ для моего блока получить доступ к объекту результатов, возвращенному в функции, которая нарисовала главную страницу? Глобальные или статические переменные? Существует ли модуль, который уже пытается решить эту проблему?