Zum Hauptinhalt springen
Verkauft ein Shop Download-Produkte, bekommt der Käufer nach der Bestellung eine Download-ID. Damit ruft er eine eigene Seite auf, auf der seine Dateien zum Herunterladen bereitstehen. Diese Seite ist das Download-Template. Das Template enthält vier Abschnitte, von denen der Shop jeweils nur einen anzeigt. Welcher es ist, entscheidet sich aus dem Aufruf: mit gültiger Download-ID, ohne ID, nach der Anmeldung im Shop oder nach einem Fehler. Wegweiser: Download-Produkte anbieten
Die Tags dieses Templates tragen kein Präfix. Msg, OrderNumber oder File heißen genau so und gelten nur hier. Mit den gleichnamigen Tags anderer Templates haben sie nichts zu tun.
Jeder Abschnitt wird als Bereich geklammert. Was außerhalb aller vier Bereiche steht, beispielsweise Kopf- und Fußzeile, erscheint immer.

Der Aufbau des Templates

DownloadError: der Fehlerfall

Dieser Abschnitt erscheint, wenn ein angeforderter Download nicht ausgeliefert wurde, beispielsweise weil die Anzahl der erlaubten Downloads erschöpft oder der Zeitraum abgelaufen ist.
Der Text in ErrMsg stammt aus den Fehlermeldungen des Download-Moduls. In den Meldungen zur überschrittenen Anzahl und zum abgelaufenen Zeitraum dürfen die Platzhalter ~maxdownloads~ und ~expdt~ stehen. Der Shop ersetzt sie durch die erlaubte Anzahl beziehungsweise das Ablaufdatum.

DownlIdInput: die Eingabe der Download-ID

Dieser Abschnitt erscheint, wenn die Seite ohne Download-ID aufgerufen wurde oder die angegebene ID nicht stimmt. Der Käufer bekommt dann ein Eingabefeld.
Msg enthält im Fehlerfall den Hinweis auf die ungültige ID und ist sonst leer. Ein eigener Einleitungstext gehört deshalb fest ins Template und nicht in dieses Tag.
Zwischen zwei Download-Versuchen wartet der Shop bewusst eine Sekunde, damit sich Download-IDs nicht durchprobieren lassen. Bauen Sie deshalb keine automatischen Wiederholungen in das Formular ein.

OrderList: die Bestellungen des Käufers

Dieser Abschnitt erscheint, wenn ein im Shop angemeldeter Käufer seine Bestellungen mit Download-Produkten aufruft.
Orders ist ein reines Schleifen-Tag und wird mit {@Orders} geöffnet. Eine einfache Klammerung {Orders} bleibt wirkungslos. Für die Frage, ob es überhaupt Bestellungen gibt, ist NoOrders da.
OrderDateTime ist der Zeitpunkt, zu dem die Download-Produkte in die Download-Verwaltung aufgenommen wurden. Das ist in der Regel der Bestellzeitpunkt, muss ihm aber nicht auf die Sekunde entsprechen. DownloadAllowed und DownloadDone schließen sich nicht aus. Eine Bestellung mit mehreren Dateien kann beides zugleich sein.

ArticleList: die Dateien einer Bestellung

Dieser Abschnitt zeigt die Download-Produkte einer Bestellung.
Auch Articles ist ein reines Schleifen-Tag und wird mit {@Articles} geöffnet.

Was die Zähler wirklich ausgeben

Downloads und ValidDateTime geben nicht immer eine Zahl beziehungsweise ein Datum aus. Ist die Anzahl unbegrenzt, steht dort der Text für “unbegrenzt”, ebenso beim Zeitraum. Wurde der Download gestoppt, steht in ValidDateTime der Text für “gestoppt”. Rechnen Sie im Template deshalb nicht mit diesen Werten. FileSize gibt einen Bindestrich aus, wenn die Datei auf dem Server nicht mehr vorhanden ist. Das ist der schnellste Weg, ein verschwundenes Download-Produkt zu erkennen. File enthält nur den Dateinamen ohne Verzeichnis, und DownloadUrl ist nur dann gefüllt, wenn der Download tatsächlich noch erlaubt ist. Setzen Sie den Link deshalb innerhalb von {DownloadAllowed}.

Erschöpfte und abgelaufene Downloads hervorheben

Zwei weitere Tags liefern eine fertige CSS-Klasse für den Warnfall.
Die Tags geben das vollständige Attribut aus, also class='warning', und sonst nichts. Sie gehören deshalb ohne eigenen Attributnamen direkt in das öffnende Element.

Die Tags im Überblick

Zulässig sind alle Tags ausschließlich im Download-Template, jeweils innerhalb des angegebenen Abschnitts.

Verwandte Themen