Description
The template process layer and process functions (e.g. template_process_HOOK(), MODULE_process_HOOK(), THEME_process_HOOK()) have been removed. Any process functions need to be converted to preprocess functions.
In the Drupal 7 theme system, process functions were used to flatten variables into strings for printing (see template_process() from Drupal 7 for an example). With the shift towards using (more) render arrays in Backdrop we can remove this additional layer of processing and complexity from the theme system.
Render arrays and renderable objects can be manipulated throughout the preprocess phase without needing to worry about the variable already being turned into markup or a flattened string. The render array can then be printed in a template file without first flattening it into a string.
Changes
Arrays in preprocess that are flattened into strings in process were changed. Flattening of arrays into strings moved into the template files, using implode() for classes and backdrop_attributes() for attributes.
renamed $classes_array
to $classes
(flatten in template)
renamed $attributes_array
to $attributes
(flatten in template)
removed $title_attributes_array
everywhere except dynamic block.
renamed $content_attributes_array
to $content_attributes (flatten in template)
renamed $html_attributes_array
, $body_attributes_array
, and $item_attributes_array
to $html_attributes
, $body_attributes
and $item_attributes
Values that are retrieved late (after preprocess!) called directly from the template files instead.
Retrieve the page html head, css, and js directly from template files.
print $head;
becomes print backdrop_get_html_head();
print $styles;
becomes print backdrop_get_css();
print $scripts;
becomes print backdrop_get_js();
added print backdrop_get_js('footer');
Color module reworked to use hook_css_alter
instead of _color_page_alter
so that _color_page_alter
does not need to be called from the process layer for themes.
Implementations of process hooks removed
Removed modules/contextual/contextual.module
contextual_process
Removed modules/layout/includes/layout.theme.inc
template_process_layout
Removed modules/user/user.module
template_process_username
Removed modules/views/theme/theme.inc
template_process_views_view