function template_preprocess_admin_page

Same name and namespace in other branches
  1. 8.9.x core/modules/system/system.admin.inc \template_preprocess_admin_page()
  2. 10 core/modules/system/system.admin.inc \template_preprocess_admin_page()
  3. 11.x core/modules/system/system.admin.inc \template_preprocess_admin_page()

Prepares variables for administrative index page templates.

Default template: admin-page.html.twig.

Parameters

$variables: An associative array containing:

  • blocks: An array of blocks to display. Each array should include a 'title', a 'description', a formatted 'content' and a 'position' which will control which container it will be in. This is usually 'left' or 'right'.

File

core/modules/system/system.admin.inc, line 54

Code

function template_preprocess_admin_page(&$variables) {
    $variables['system_compact_link'] = [
        '#type' => 'system_compact_link',
    ];
    $variables['containers'] = [];
    $stripe = 0;
    foreach ($variables['blocks'] as $block) {
        if (!empty($block['content']['#content'])) {
            if (empty($block['position'])) {
                // Perform automatic striping.
                $block['position'] = ++$stripe % 2 ? 'left' : 'right';
            }
            $variables['containers'][$block['position']]['blocks'][] = [
                '#theme' => 'admin_block',
                '#block' => $block,
            ];
        }
    }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.