> ## Documentation Index
> Fetch the complete documentation index at: https://dokumentation.websale.de/llms.txt
> Use this file to discover all available pages before exploring further.

# Creating information pages

> How to create information pages such as terms and conditions, right of withdrawal, and imprint in WEBSALE V8s, either as individual templates or as a master information page with changing content.

These pages have one thing in common: they differ only in their text, while the header, footer, and navigation are the same everywhere. This is exactly why the WEBSALE V8s include technique is worthwhile here. WEBSALE V8s offers two routes for this: the static and the dynamic template include.

This page shows both routes using the concrete case of information pages. The include technique itself, including FastIncludes and external includes, is described elsewhere.

Guide: Reusability, includes&#x20;

## Which route suits your shop

The choice depends on how many information pages you maintain and how similar they are to each other.

| Route | Structure | Sensible when |
| - | - | - |
| Static template include | one complete template per information page, which pulls in content from other pages | you have few pages and need individual text blocks twice |
| Dynamic template include | one single complete template whose content is determined by the clicked link | you have several information pages that differ only in their text |

## Static template include

With the static route, each information page remains its own complete template. One of these pages can also take over a text block from another page.

A typical case: on the terms page, the text of the right of withdrawal is also to appear, which is already on its own page. The text is therefore maintained only once.

For this, on the withdrawal page `tpl_widerruf.htm`, wrap the text to be reused with the section bracketing `{WS-Include}`. Everything outside this bracketing, for example the header and footer, remains reserved for the withdrawal page and is not taken along.

```html theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
{WS-Include}
   <h1>Right of withdrawal</h1>
   <p>Your withdrawal text...</p>
{/WS-Include}
```

On the terms page `tpl_agb.htm`, you pull this section with `~WS-IncludeTpl()~` into the desired position. In the parentheses, you write the file name of the page from which the content comes.

```html theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
<body>
<h1>Our terms and conditions</h1>
Terms text
...
<h1>Our right of withdrawal</h1>
~WS-IncludeTpl(tpl_widerruf.htm)~
...
</body>
```

Reference: WS-Include&#x20;

## Master information page with dynamic template include

If you create a complete template for each information page, these templates are identical apart from their content. Each change to the footer would then have to be repeated in each individual template.

The dynamic route avoids this. You create only one complete template, the master information page. It still contains all global elements such as the header, footer, and navigation. Which content appears in it is decided by the link that the visitor clicks.

The setup consists of three parts.

### Create the master information page

The master information page, for example `tpl_informationsseite.htm`, does not contain a fixed include at the content position, but the placeholder `$IncludeTpl$`. On request, the shop replaces it with the file that the link names.

```html theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
<body>
...
~WS-IncludeTpl($IncludeTpl$)~
...
</body>
```

Reference: WS-IncludeTpl()&#x20;

### Create content pages

For the individual content, you create rudimentary files that contain neither header, footer, nor navigation, for example `incl_agb.htm`, `incl_widerruf.htm`, and `incl_ueberuns.htm`. These files must be in the same template directory as the master information page.

Wrap the content to be displayed with the section bracketing `{WS-Include}`, just as in the static route.

```html theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
{WS-Include}
   <h1>Our terms and conditions</h1>
   <p>Your terms text...</p>
{/WS-Include}
```

### Add links

The link decides via the `include_tpl` parameter which content file the master information page loads. You create these links where your visitors expect them, usually in the footer.

```html theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
<a href="~WS-SSLLoadTpl(tpl_informationsseite.htm)~&include_tpl=incl_agb.htm">Our terms and conditions</a>
<a href="~WS-SSLLoadTpl(tpl_informationsseite.htm)~&include_tpl=incl_widerruf.htm">Our terms of withdrawal</a>
```

For each additional information page, you add a content file and a link. The master template itself remains unchanged.


## Related topics

- [Reusability: includes](https://dokumentation.websale.de/en/v8s/templates/wiederverwendung-includes.md)
- [Template types](https://dokumentation.websale.de/en/v8s/grundlagen-templates/template-typen.md)
- [Loading information pages via AJAX](https://dokumentation.websale.de/en/v8s/informationsseiten/informationsseiten-per-ajax-nachladen.md)
- [SEO URLs and link optimization](https://dokumentation.websale.de/en/v8s/seo/seo-urls-und-link-optimierung.md)
- [Internal links](https://dokumentation.websale.de/en/v8s/domains/interne-verlinkungen.md)


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