> ## Documentation Index
> Fetch the complete documentation index at: https://vr-it-services-pro.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> The Page Builder Full Width template, when to use it, and how to make your own.

# Page templates

# Page templates

Vara SaaS ships one page template, plus the option to add your own.

![Screenshot: the Page Attributes panel in the page editor showing the Template dropdown](https://mintlify.s3.us-west-1.amazonaws.com/vr-it-services-pro/images/screenshots/page-templates-editor.png)

## Page Builder Full Width

**Admin path:** Edit a page → **Page Attributes** panel in the sidebar → **Template**

Selecting **Page Builder Full Width** switches that page to a bare content canvas.

| What it does | Detail |
| - | - |
| Removes the container | Content spans the full width |
| Removes the theme `h1` | No duplicate title above your builder content |
| Removes the sidebar | Even if the site-wide switch is on |
| Removes breadcrumbs | Always |
| Keeps the header and footer | You still get your site chrome |

This is the template assigned to the four imported demo pages.

> [!WARNING]
>
> **Assign it to a page with content.** With no content, the page renders as an empty canvas with just the header and footer. The theme will automatically generate a homepage layout for a front page using this template if it finds none, but that behaviour is specific to the front page.

## Choosing between the two options

| You want | Use |
| - | - |
| A full-bleed Elementor landing page | **Page Builder Full Width** |
| A plain WordPress page with a title, sidebar, and breadcrumbs | **Default Template** |
| The blog index | **Default Template** on your posts page — do not change it |

**When a builder page does not need the template**

The theme detects builder-owned pages on its own and steps aside automatically. Assigning the
template is still recommended because it guarantees full width regardless of how the builder
reports itself, and it makes the intent explicit to anyone editing the page later.

## Creating your own template

Any PHP file in a child theme with the right header becomes a selectable option.

1. Create a file at `wp-content/themes/your-child-theme/templates/landing.php`
2. Add the template header as three comments at the very top of the file
3. Add your markup below it

```php theme={null}
<?php
/**
 * Template Name: Landing Page — No Header
 * Template Post Type: page, post
 */

get_header();
?>
<main id="site-content" class="landing-main">
  <?php
  while ( have_posts() ) :
      the_post();
      the_content();
  endwhile;
  ?>
</main>
<?php
get_footer();
?>
```

> [!WARNING]
>
> **`get_header()` opens `<main id="site-content">` and `get_footer()` closes it.** Your template must not open another `<main>` — two main landmarks on one page is exactly the accessibility bug this theme works to avoid. Check your markup if the page looks visually correct but fails an accessibility audit.

## How templates map to pages

WordPress picks a template using its standard hierarchy, which Vara SaaS follows.

| Request | Template used |
| - | - |
| Front page (static) | `front-page.php` |
| Posts page | `home.php` |
| Single post | `single.php` |
| Page | `page.php` |
| Category, tag, author, date archive | `archive.php` |
| Search results | `search.php` |
| Not found | `404.php` |
| Anything else | `index.php` |

> [!NOTE]
>
> A page's assigned template overrides the hierarchy for that page. `page.php` still governs pages left on **Default Template**.

![Screenshot: a diagram of the WordPress template hierarchy used by the theme](https://mintlify.s3.us-west-1.amazonaws.com/vr-it-services-pro/images/screenshots/page-templates-hierarchy.png)

## The fallback template

`index.php` is the last resort. It renders a plain container with an optional sidebar and a simple post list.

> [!WARNING]
>
> **`index.php` uses an `h1` for every post title.** On an archive rendering ten posts, that is ten `h1` elements — an inconsistent heading outline compared with the theme's other archive templates, which correctly use one `h1` in the hero plus `h2` and `h3` in cards.
>
> It rarely renders in a normal install, because `home.php`, `archive.php`, and `search.php` cover those cases. But it can render if a plugin registers a custom archive the theme does not handle, and it would fail a heading hierarchy audit. If you build a child theme, replacing `index.php` with a correct outline is a worthwhile fix.

## Related

> **[Template files](/developers/template-files.md)**
>
> What each template renders, and how to override it.

> **[Demo pages](/templates/demo-pages.md)**
>
> The pages that ship with the theme.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.