Еквівалент kuk_footer (), який використовувався в Drupal 6, полягає в реалізації куки_страни_будування () та зміні вмісту $page['page_bottom']
, використовуючи код, аналогічний наступному:
function mymodule_page_build(&$page) {
$page['page_bottom']['devel'] = array(
'#weight' => 25,
'#markup' => '<div style="clear:both;">' . devel_query_table() . '</div>',
);
}
Вміст $page['page_bottom']
виводиться з html.tpl.php , використовуючи наступний код:
<?php print $page_top; ?>
<?php print $page; ?>
<?php print $page_bottom; ?>
</body>
</html>
Значення $page_bottom
ініціалізовано з template_process_html () за допомогою наступного коду:
// Render page_top and page_bottom into top level variables.
$variables['page_top'] = drupal_render($variables['page']['page_top']);
$variables['page_bottom'] = drupal_render($variables['page']['page_bottom']);
// Place the rendered HTML for the page body into a top level variable.
$variables['page'] = $variables['page']['#children'];
$variables['page_bottom'] .= drupal_get_js('footer');
Різниця між ho_page_alter () і hook_page_build()
тим, що hook_page_alter()
виконується після, hook_page_build()
і повинна використовуватися для зміни або видалення вмісту, доданого іншим модулем, при цьому hook_page_build()
слід використовувати для додавання нового вмісту на сторінку.