On this page
html.tpl.php
Last updated on
7 December 2017
Drupal 7 will no longer be supported after January 5, 2025. Learn more and find resources for Drupal 7 sites
The html.tpl.php file returns the HTML for the basic html structure of a single Drupal page.
Available variables:
- $css
- An array of CSS files for the current page.
- $language
- (object) The language the site is being displayed in. $language->language contains its textual representation. $language->dir contains the language direction. It will either be 'ltr' or 'rtl'.
- $html_attributes
- String of attributes for the html element. It can be manipulated through the variable $html_attributes_array from preprocess functions.
- $html_attributes_array
- An array of attribute values for the
<head>
element. It is flattened into a string within the variable $html_attributes. - $rdf_namespaces
- All the RDF namespace prefixes used in the HTML document.
- $grddl_profile
- A GRDDL profile allowing agents to extract the RDF data.
- $head_title
- A modified version of the page title, for use in the TITLE tag.
- $head_title_array
- (array) An associative array containing the string parts that were used to generate the $head_title variable, already prepared to be output as TITLE tag. The key/value pairs may contain one or more of the following, depending on conditions:
- title: The title of the current page, if any.
- name: The name of the site.
- slogan: The slogan of the site, if any, and if there is no title.
- $head
- Markup to be included in the
<head>
section of the page (including meta tags, keyword tags, and so on). - $default_mobile_metatags
- TRUE if default mobile metatags for responsive design should be displayed.
- $styles
- Style tags necessary to import all CSS files for the page.
- $scripts
- Script tags necessary to load the JavaScript files and settings for the page.
- $attributes
- String of attributes for the body element. It can be manipulated through the variable $attributes_array from preprocess functions.
- $attributes_array
- An array of attribute values for the
<body>
element. It is flattened into a string within the variable $attributes. - $skip_link_anchor
- The HTML ID of the element that the "skip link" should link to. Defaults to "main-menu".
- $skip_link_text
- The text for the "skip link". Defaults to "Jump to Navigation".
- $page_top
- Initial markup from any modules that have altered the page. This variable should always be output first, before all other dynamic content.
- $page
- The rendered page content.
- $page_bottom
- Final closing markup from any modules that have altered the page. This variable should always be output last, after all other dynamic content.
- $classes
- String of classes that can be used to style contextually through CSS. It should be placed within the tag. When selecting through CSS it's recommended that you use the body tag, e.g., "body.front". It can be manipulated through the variable $classes_array from preprocess functions. The default values can contain one or more of the following:
- front: Page is the home page.
- not-front: Page is not the home page.
- logged-in: The current viewer is logged in.
- not-logged-in: The current viewer is not logged in.
- node-type-[node type]: When viewing a single node, the type of that node. For example, if the node is a Blog entry, this would be "node-type-blog". Note that the machine name of the content type will often be in a short form of the human readable label.
The following only apply with the default sidebar_first and sidebar_second block regions:
- two-sidebars: When both sidebars have content.
- no-sidebars: When no sidebar content exists.
- one-sidebar and sidebar-first or sidebar-second: A combination of the two classes when only one of the two sidebars have content.
See also
template_preprocess()
template_preprocess_html()
zen_preprocess_html() in Zen's template.php
template_process()
template_process_html()
zen_process_html() in Zen's template.php
Help improve this page
Page status: No known problems
You can:
You can:
- Log in, click Edit, and edit this page
- Log in, click Discuss, update the Page status value, and suggest an improvement
- Log in and create a Documentation issue with your suggestion