> ## 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.

# URL-Parameter

> Alle Parameter, die sich an eine WEBSALE-V8s-Adresse anhängen lassen: Basis-, Zusatz- und Testparameter, dazu Schreibweise, Reihenfolge und externe Parameter.

Eine Shopadresse besteht aus der Domain, einem sprechenden Namen und beliebig vielen Name-Wert-Paaren, den Parametern. Über sie steuern Sie, welches Produkt erscheint, auf welchem Template es erscheint, woher ein Besucher kam und in welchem Testmodus der Shop läuft.

```text theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
https://www.ihr-shop.de/<sprechender Name>?name1=wert1&name2=wert2&name3=wert3
```

WEBSALE V8s unterscheidet drei Gruppen. **Basis-Parameter** bestimmen, welcher Inhalt erscheint, und sind je nach Seite zwingend. **Zusatz-Parameter** sind immer freiwillig und steuern Nebenwirkungen wie Herkunftserkennung oder freie Werte. **Test-Parameter** schalten Testmodi ein und gehören nicht in einen Link, den ein Käufer zu sehen bekommt.

Wegweiser: [SEO-URLs und Link-Optimierung](https://dokumentation.websale.de/v8s/seo/seo-urls-und-link-optimierung.md) · Materialien: [Beispiele für Parameterentfernung](https://dokumentation.websale.de/v8s/materialien/materialien-parameterentfernung.md)

## Schreibweise

| Regel | |
| - | - |
| Parameternamen | immer klein geschrieben |
| erster Parameter | mit `?` an die Adresse angehängt |
| alle weiteren | mit `&` angehängt |
| Name und Wert | durch `=` getrennt |

In WEBSALE V7 und V8 war der erste Parameter stets `?websale8=`, weshalb sich jeder weitere Parameter verlässlich mit `&` anhängen ließ. Mit den SEO-URLs der V8s entfällt dieser Parameter auf allen suchmaschinenrelevanten Seiten, also auf Start-, Kategorie-, Produkt- und Informationsseiten. Ob an eine erzeugte Adresse ein `?` oder ein `&` gehört, lässt sich seitdem nicht mehr vorhersagen.

### Parameter an ein Tag anhängen

Weil ein Link-Tag je nach Lage eine Adresse mit oder ohne Parameter erzeugt, stellen Sie `~WS-EnsureNextLinkContainsURLParams~` davor. Danach hängen Sie Ihre Parameter immer mit `&` an, und das Shopsystem sorgt dafür, dass die Adresse bereits ein `?` enthält.

```html theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
~WS-EnsureNextLinkContainsURLParams~~PR-Link~&parameter1=wert1
~WS-EnsureNextLinkContainsURLParams~~CAT-Link~&parameter1=wert1
~WS-EnsureNextLinkContainsURLParams~~WS-LoadTpl(tpl_agb.htm)~&parameter1=wert1
```

> [!NOTE]
>
> Dasselbe gilt für einen angehängten Anker, denn auch er muss hinter einem eventuellen Parameterteil stehen.
>
> ```html theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
> ~WS-EnsureNextLinkContainsURLParams~~WS-LoadTpl(tpl_agb.htm)~#ende
> ```

Referenz: [WS-EnsureNextLinkContainsURLParams](https://dokumentation.websale.de/v8s/referenz/tags/ws/shop-seite-und-technik.md#die-tags-im-uberblick)

## Reihenfolge

Dieselbe Seite unter zwei verschieden sortierten Adressen ist für eine Suchmaschine doppelter Inhalt. Deshalb gibt es eine feste Reihenfolge:

1. Basis-Parameter, die den Inhalt bestimmen: `pn`, `pi`, `ci`, `tpl`
2. Zusatz-Parameter, in dieser Reihenfolge: `act`, `ref`, `subref`, `fp1` bis `fp3`, `dp1` bis `dp3`, `otp1` bis `otp3`, `m`, `voucher_number`
3. Test-Parameter

```text theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
&pi=32-777&ref=abc&fp1=xyz     richtig, ref steht vor fp1
&pi=32-777&fp1=xyz&ref=abc     falsch, ref steht hinter fp1
```

> [!WARNING]
>
> Das Shopsystem kann eine falsche Reihenfolge selbst richtigstellen, indem es auf die richtig sortierte Adresse weiterleitet. **Das geschieht aber nur unter Bedingungen:**
>
> * Die Link-Optimierung muss eingeschaltet sein, also `Allow = yes` im Abschnitt `LinkOptimization`, oder sie läuft im Testmodus.
> * Es greift nur auf Startseite, Kategorieseite, Produktseite und bei über `WS-LoadTpl()` geladenen Templates.
> * Es greift nur bei Aufrufen per GET und nicht bei AJAX-Aufrufen.
>
> Ist die Link-Optimierung nicht eingerichtet, bleibt eine falsch sortierte Adresse unverändert bestehen. Verlassen Sie sich deshalb nicht darauf, sondern bauen Sie Ihre Links gleich in der richtigen Reihenfolge.

Maßgeblich ist die Reihenfolge im Canonical-Link der Seite. Das Shopsystem vergleicht die Position jedes Parameters der aufgerufenen Adresse mit seiner Position im Canonical und leitet weiter, sobald eine Position aus der Reihe fällt.

Wegweiser: [URL- und Link-Optimierung](https://dokumentation.websale.de/v8s/seo/seo-urls-und-link-optimierung.md)

## Basis-Parameter

Diese Parameter bestimmen, welcher Inhalt erscheint. Je nachdem, welche Seite aufgerufen werden soll, ist einer davon zwingend.

| Parameter | Wirkung |
| - | - |
| `&pn=…` | zeigt das Produkt mit dieser Produktnummer auf der Einzelproduktansicht, unabhängig von allen weiteren Parametern |
| `&pi=…` | zeigt das Produkt mit diesem Produktindex auf der Einzelproduktansicht, unabhängig von allen weiteren Parametern. Für Deeplinks von externen Seiten und für Testaufrufe |
| `&ci=…` | zeigt die Kategorie mit diesem Kategorieindex, unabhängig von allen weiteren Parametern. Für Deeplinks von externen Seiten und für Testaufrufe |
| `&tpl=…` | verwendet das angegebene Template |

`&tpl=` erzeugt der Shop selbst, wenn zu einer Seite keine SEO-URL hinterlegt ist. Sie setzen ihn selbst, wenn ein Produkt oder eine Kategorie auf einem abweichenden Template erscheinen soll.

`&pi=` und `&ci=` sind mit den SEO-URLs der V8s entfallen, werden aber weiterhin unterstützt. Dasselbe gilt in manchen Fällen für `&tpl=`. Für neue Links verwenden Sie die SEO-URL.

Wegweiser: [Gewähltes Produkt anzeigen](https://dokumentation.websale.de/v8s/produkte/gewaehltes-produkt-anzeigen.md) · [Gewählte Kategorie anzeigen](https://dokumentation.websale.de/v8s/kategorien/kategorie-anzeigen.md)

`&sid=` und `&act=` sind Werkzeuge zur Fehlersuche beziehungsweise Auslöser besonderer Funktionen. Beide bestimmen keinen Seiteninhalt und sind nie zwingend. Sie stehen deshalb bei den Zusatz-Parametern.

## Zusatz-Parameter

Diese Parameter sind nie zwingend. Jeder lässt sich einzeln oder in Kombination anhängen.

| Parameter | Wirkung |
| - | - |
| `&act=…` | löst eine Funktion schon beim Aufruf aus, beispielsweise lädt `&act=subscription` das Abo-Modul |
| `&ref=…` | setzt den Referer, mit dem Sie erkennen, woher ein Deeplink stammt |
| `&subref=…` | setzt zusätzlich den Subreferer |
| `&fp1=…` bis `&fp3=…` | freie Parameter, im Template ausgebbar und als Klammerung auswertbar. Erscheinen im Canonical-Link |
| `&dp1=…` bis `&dp3=…` | Design-Parameter, sonst wie die freien Parameter. Erscheinen **nicht** im Canonical-Link |
| `&otp1=…` bis `&otp3=…` | OneTime-Parameter, gelten nur für diesen einen Aufruf. Erscheinen **nicht** im Canonical-Link |
| `&m=…` | die Mall-Kennung, vor allem zur Kennzeichnung von Testshops, beispielsweise `&m=test` oder `&m=devpak` |
| `&voucher_number=…` | legt die Gutscheinnummer schon beim Aufruf in das Eingabefeld des Bestellablaufs |
| `&sid=new` | startet eine neue Sitzung und verwirft dabei Anmeldung, Warenkorb, gewählte Zahlungs- und Versandart. Für die Fehlersuche |

> [!WARNING]
>
> Der Unterschied zwischen den drei Parameterfamilien liegt nicht in dem, was sie im Template können, sondern darin, wie lange sie gelten und ob sie im Canonical-Link auftauchen.
>
> | Familie | Gilt | Im Canonical |
> | - | - | - |
> | `fp1` bis `fp3` | für die Sitzung | ja |
> | `dp1` bis `dp3` | für die Sitzung | nein |
> | `otp1` bis `otp3` | nur für diesen Aufruf | nein |
>
> Steuern Sie mit `fp` einen suchmaschinenrelevanten Inhalt, entstehen damit zusätzliche indizierbare Adressen. Steuern Sie damit nur das Aussehen, nehmen Sie `dp`.

Wegweiser: [Werbeerfolgskontrollen mit Referer und Subreferer](https://dokumentation.websale.de/v8s/marketing-funktionen/werbeerfolgskontrollen-mit-referer-und-subreferer.md) · [Freie Parameter-Tags verwenden](https://dokumentation.websale.de/v8s/fortgeschrittene-designtechniken/freie-parameter-tags-verwenden.md) · [Gutschein-Eingabe vorsehen](https://dokumentation.websale.de/v8s/gutscheine-anbieten/gutschein-eingabe-vorsehen.md)

## Test-Parameter

Diese Parameter schalten Testmodi ein. Der allgemeine Testmodus verlangt ein Passwort, die übrigen bauen darauf auf.

| Parameter | Schaltet ein |
| - | - |
| `&test=on` | den allgemeinen Testmodus. Es erscheint zuerst eine Seite mit Passwortabfrage, danach geht es auf der ursprünglich aufgerufenen Seite weiter |
| `&design-test=` | den Designtestmodus |
| `&event-test=` | den Eventtestmodus, für zeitgesteuerte Bereiche |
| `&campaign-test=` | den Kampagnentestmodus, für zeitlich begrenzte Aktionen |
| `&w2p-test` | den Web2Print-Testmodus |
| `&geoip-test=` | den GeoIP-Testmodus, für länderabhängige Bereiche |
| `&sslonly-test=` | den SSL-Only-Testmodus |
| `&linkoptimization-test=` | den Testmodus der Link-Optimierung |
| `&ab-test-id=` | den A/B-Test |
| `&payment-test=` | den Testmodus der Zahlungsarten |

Mehrere Testmodi lassen sich kombinieren:

```text theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
https://www.ihr-shop.de/?test=on&payment-test=on&creditcardclearing=on
```

Für einzelne Zahlungsarten gibt es weitere, speziellere Testmodi, und die Liste oben ist nicht abschließend. Die vollständige Übersicht steht bei den Testmodi.

Wegweiser: [Testmodi des Shops ein- und ausschalten](https://dokumentation.websale.de/v8s/domains/testmodi-des-shops-ein-ausschalten.md)

> [!WARNING]
>
> Test-Parameter gehören nicht in einen Link, der nach außen geht. Eine Adresse mit `&test=on` in einer Kampagne, einer Sitemap oder einer E-Mail führt jeden Empfänger auf die Passwortabfrage.

## Externe Parameter

Parameter fremder Systeme lassen sich unverändert anhängen. Das Shopsystem reicht sie durch, wertet sie nicht aus und stört sie nicht.

```text theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
https://www.ihr-shop.de/<sprechender Name>?utm_campaign=Weihnachten&utm_medium=Banner&utm_source=Facebook
```

Das Beispiel zeigt die Kampagnenparameter von Google Analytics. Mit ihnen lässt sich auswerten, über welche Kampagne ein Besucher gekommen ist. Welche Parameter ein Dienst erwartet, steht in dessen eigener Dokumentation.

> [!WARNING]
>
> Externe Parameter erzeugen zusätzliche Adressen zu demselben Inhalt und damit doppelten Inhalt. Ob sich das lohnt, ist eine Abwägung zwischen Auswertbarkeit und Suchmaschinenranking. Die Entfernung solcher Parameter aus der Adresse ist ein eigenes Thema.

Materialien: Beispiele für Parameterentfernung

## Verwandte Themen

* Wegweiser: [SEO-URLs und Link-Optimierung](https://dokumentation.websale.de/v8s/seo/seo-urls-und-link-optimierung.md)
* Wegweiser: [Freie Parameter-Tags verwenden](https://dokumentation.websale.de/v8s/fortgeschrittene-designtechniken/freie-parameter-tags-verwenden.md)
* Referenz: [URL- (Internetadresse)](https://dokumentation.websale.de/v8s/referenz/tags/url-internetadresse.md)
* Referenz: [WS- (Allgemeine Tags)](https://dokumentation.websale.de/v8s/referenz/tags/ws/shop-seite-und-technik.md)


## Related topics

- [Domains und Shop-Aufruf: Grundlagen](https://dokumentation.websale.de/v8s/domains/grundlagen-domains-und-shop-aufruf.md)
- [API-Referenz Produkte](https://dokumentation.websale.de/schnittstellen/admin-interface-api/api-referenz-produkte.md)
- [PDF-Ansichten](https://dokumentation.websale.de/frontend/funktionsubersicht/pdf-ansichten.md)
- [URL- (Internetadresse)](https://dokumentation.websale.de/v8s/referenz/tags/url-internetadresse.md)
- [CHECK- (URL- und Cookie-Daten)](https://dokumentation.websale.de/v8s/referenz/tags/check.md)


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