{# Page layout — full HTML page wrapping rendered sections #} {% from "macros/head.html" import render_head %} {% from "macros/meta.html" import render_meta %} {% from "macros/header.html" import render_header %} {% from "macros/nav.html" import render_nav %} {% from "macros/footer.html" import render_footer %} {% from "macros/page_navigation.html" import render_page_navigation %} {% set page_config = builder.page_config(data) %} {% set page_nav_links = builder.page_navigation(page_config, data, ctx) %} {{ data.title | default("Page") }} {{ render_head(baseurl=baseurl, config=page_config, builder=builder, data=data, ctx=ctx) }} {{ render_meta(data.meta | default([])) }} {% if data.style %} {% endif %}
{{ render_header(header=data.header | default(none)) }} {{ render_nav( nav=data.nav | default(none), config=page_config, baseurl=baseurl, global_nav=builder.root_data.nav | default(none) if builder.root_data else none, page_url=ctx.page_url, page_navigation=page_nav_links ) }}
{% for section in data._sections %} {{ section.html }} {% endfor %}
{{ render_page_navigation(page_nav_links) }} {{ render_footer( footer=data.footer | default(none), global_footer=builder.root_data.footer | default(none) if builder.root_data else none ) }}