page.html.twig
Same filename in this branch
Same filename in other branches
- 9 core/profiles/demo_umami/themes/umami/templates/layout/page.html.twig
- 9 core/themes/olivero/templates/layout/page.html.twig
- 9 core/themes/stable9/templates/layout/page.html.twig
- 9 core/themes/seven/templates/page.html.twig
- 9 core/themes/claro/templates/page.html.twig
- 9 core/themes/bartik/templates/page.html.twig
- 9 core/themes/stable/templates/layout/page.html.twig
- 9 core/themes/starterkit_theme/templates/layout/page.html.twig
- 9 core/themes/classy/templates/layout/page.html.twig
- 9 core/modules/system/templates/page.html.twig
- 8.9.x core/profiles/demo_umami/themes/umami/templates/layout/page.html.twig
- 8.9.x core/themes/seven/templates/page.html.twig
- 8.9.x core/themes/claro/templates/page.html.twig
- 8.9.x core/themes/bartik/templates/page.html.twig
- 8.9.x core/themes/stable/templates/layout/page.html.twig
- 8.9.x core/themes/classy/templates/layout/page.html.twig
- 8.9.x core/modules/system/templates/page.html.twig
- 10 core/profiles/demo_umami/themes/umami/templates/layout/page.html.twig
- 10 core/themes/olivero/templates/layout/page.html.twig
- 10 core/themes/stable9/templates/layout/page.html.twig
- 10 core/themes/claro/templates/page.html.twig
- 10 core/themes/starterkit_theme/templates/layout/page.html.twig
- 10 core/modules/system/templates/page.html.twig
Default theme implementation to display a single page.
The doctype, html, head and body tags are not in this template. Instead they can be found in the html.html.twig template in this directory.
Available variables:
General utility variables:
- base_path: The base URL path of the Drupal installation. Will usually be "/" unless you have installed Drupal in a sub-directory.
- is_front: A flag indicating if the current page is the front page.
- logged_in: A flag indicating if the user is registered and signed in.
- is_admin: A flag indicating if the user has permission to access administration pages.
Site identity:
- front_page: The URL of the front page. Use this instead of base_path when linking to the front page. This includes the language domain or prefix.
Page content (in order of occurrence in the default page.html.twig):
- messages: Status and error messages. Should be displayed prominently.
- node: Fully loaded node, if there is an automatically-loaded node associated with the page and the node ID is the second argument in the page's path (e.g. node/12345 and node/12345/revisions, but not comment/reply/12345).
Regions:
- page.header: Items for the header region.
- page.primary_menu: Items for the primary menu region.
- page.secondary_menu: Items for the secondary menu region.
- page.highlighted: Items for the highlighted content region.
- page.help: Dynamic help text, mostly for admin pages.
- page.content: The main content of the current page.
- page.sidebar_first: Items for the first sidebar.
- page.sidebar_second: Items for the second sidebar.
- page.footer: Items for the footer region.
- page.breadcrumb: Items for the breadcrumb region.
See also
3 theme calls to page.html.twig
- ElementInfoManagerTest::providerTestGetInfoElementPlugin in core/
tests/ Drupal/ Tests/ Core/ Render/ ElementInfoManagerTest.php - Provides tests data for testGetInfoElementPlugin().
- ElementInfoManagerTest::testGetInfoElementPlugin in core/
tests/ Drupal/ Tests/ Core/ Render/ ElementInfoManagerTest.php - Tests the getInfo() method when render element plugins are used.
- Page::getInfo in core/
lib/ Drupal/ Core/ Render/ Element/ Page.php - Returns the element properties for this element.
File
-
core/
modules/ system/ templates/ page.html.twig
View source
- {#
- /**
- * @file
- * Default theme implementation to display a single page.
- *
- * The doctype, html, head and body tags are not in this template. Instead they
- * can be found in the html.html.twig template in this directory.
- *
- * Available variables:
- *
- * General utility variables:
- * - base_path: The base URL path of the Drupal installation. Will usually be
- * "/" unless you have installed Drupal in a sub-directory.
- * - is_front: A flag indicating if the current page is the front page.
- * - logged_in: A flag indicating if the user is registered and signed in.
- * - is_admin: A flag indicating if the user has permission to access
- * administration pages.
- *
- * Site identity:
- * - front_page: The URL of the front page. Use this instead of base_path when
- * linking to the front page. This includes the language domain or prefix.
- *
- * Page content (in order of occurrence in the default page.html.twig):
- * - messages: Status and error messages. Should be displayed prominently.
- * - node: Fully loaded node, if there is an automatically-loaded node
- * associated with the page and the node ID is the second argument in the
- * page's path (e.g. node/12345 and node/12345/revisions, but not
- * comment/reply/12345).
- *
- * Regions:
- * - page.header: Items for the header region.
- * - page.primary_menu: Items for the primary menu region.
- * - page.secondary_menu: Items for the secondary menu region.
- * - page.highlighted: Items for the highlighted content region.
- * - page.help: Dynamic help text, mostly for admin pages.
- * - page.content: The main content of the current page.
- * - page.sidebar_first: Items for the first sidebar.
- * - page.sidebar_second: Items for the second sidebar.
- * - page.footer: Items for the footer region.
- * - page.breadcrumb: Items for the breadcrumb region.
- *
- * @see template_preprocess_page()
- * @see html.html.twig
- *
- * @ingroup themeable
- */
- #}
- <div class="layout-container">
-
- <header role="banner">
- {{ page.header }}
- </header>
-
- {{ page.primary_menu }}
- {{ page.secondary_menu }}
-
- {{ page.breadcrumb }}
-
- {{ page.highlighted }}
-
- {{ page.help }}
-
- <main role="main">
- <a id="main-content" tabindex="-1"></a>{# link is in html.html.twig #}
-
- <div class="layout-content">
- {{ page.content }}
- </div>{# /.layout-content #}
-
- {% if page.sidebar_first %}
- <aside class="layout-sidebar-first" role="complementary">
- {{ page.sidebar_first }}
- </aside>
- {% endif %}
-
- {% if page.sidebar_second %}
- <aside class="layout-sidebar-second" role="complementary">
- {{ page.sidebar_second }}
- </aside>
- {% endif %}
-
- </main>
-
- {% if page.footer %}
- <footer role="contentinfo">
- {{ page.footer }}
- </footer>
- {% endif %}
-
- </div>{# /.layout-container #}
Related topics
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.