install_display_output($output, $install_state)
Displays themed installer output and ends the page request.
Installation tasks should use #title to set the desired page title, but otherwise this function takes care of theming the overall page output during every step of the installation.
Parameters
$output: The content to display on the main part of the page.
$install_state: An array of information about the current installation state.
File
- core/includes/install.core.inc, line 961
- API functions for installing Drupal.
Code
function install_display_output($output, $install_state) { // Ensure the maintenance theme is initialized. // The regular initialization call in install_begin_request() may not be // reached in case of an early installer error. drupal_maintenance_theme(); // Prevent install.php from being indexed when installed in a sub folder. // robots.txt rules are not read if the site is within domain.com/subfolder // resulting in /subfolder/install.php being found through search engines. // When settings.php is writeable this can be used via an external database // leading a malicious user to gain php access to the server. $noindex_meta_tag = array( '#tag' => 'meta', '#attributes' => array( 'name' => 'robots', 'content' => 'noindex, nofollow', ), ); $output['#attached']['html_head'][] = [$noindex_meta_tag, 'install_meta_robots']; // Only show the task list if there is an active task; otherwise, the page // request has ended before tasks have even been started, so there is nothing // meaningful to show. $regions = array(); if (isset($install_state['active_task'])) { // Let the theming function know when every step of the installation has // been completed. $active_task = $install_state['installation_finished'] ? NULL : $install_state['active_task']; $task_list = array( '#theme' => 'maintenance_task_list', '#items' => install_tasks_to_display($install_state), '#active' => $active_task, ); $regions['sidebar_first'] = $task_list; } $bare_html_page_renderer = \Drupal::service('bare_html_page_renderer'); $response = $bare_html_page_renderer->renderBarePage($output, $output['#title'], 'install_page', $regions); $default_headers = array( 'Expires' => 'Sun, 19 Nov 1978 05:00:00 GMT', 'Last-Modified' => gmdate(DATE_RFC1123, REQUEST_TIME), 'Cache-Control' => 'no-cache, must-revalidate', 'ETag' => '"' . REQUEST_TIME . '"', ); $response->headers->add($default_headers); $response->send(); exit; }
Please login to continue.