Zunächst achten Sie darauf, dass Ihre Installation des CP::Shop oder Contentpapst-Bundle auf dem neuesten Stand ist, indem Sie gegebenenfalls verfügbare Updates über das standardmäßig integrierte Updatetool aufspielen. Die in diesem Beitrag genutzte Möglichkeit, die Verfügbarkeit der Artikel ab/bis nicht nur tagesweise, sondern minutengenau festzulegen, ist erst ab der aktuellen Version 2011.1.03.05 gegeben. Ist die Installation auf dem neuesten Stand, dann können Sie unter "Module > CP::Shop > Artikel hinzufügen" einen neuen Artikel anlegen, bei welchem Sie in den Feldern "Verfügbar ab" und "Verfügbar bis" z.B. Werte wie im Bild unten sichtbar eingeben:
Nun geht es an die Anpassung der Vorlagen und weiterer erforderlicher Dateien im Online-Shop. Ziel ist es, diesen Countdown in der Detailansicht eines Artikels zu integrieren und zwar immer dann, wenn für einen Artikel ein Wert für "Verfügbarkeit bis" hinterlegt wurde. Somit können Sie normale und zeitlich begrenzte Artikel frei kombinieren. Für die Detailansicht eines Artikels kommt standardmäßig die Vorlage "/modules/shop/templates/details.html" zum Einsatz (bzw. im eigenen Vorlagenset zu finden). Öffnen Sie diese Vorlage über die Dateiverwaltung im Administrationsbereich bzw. einen Editor eigener Wahl und fügen Sie dort an der gewünschten Stelle folgenden Code ein:
Dieser Code enthält den erforderlichen HTML-Code und den Aufruf der neuen Javascript-Funktion für den Countdown. Das Ende des Countdowns wird dabei über den {cp:tag} "{cp:shop:item:date_available_till}" übermittelt. Den dafür zuständigen Code fügen Sie am Ende der in Ihrem Vorlagenset genutzten Javascript-Datei ein (im Ordner "/themes/[IHR VORLAGENSET]/" zu finden, z.B. "scripts.js"):
Beim Aufruf der Detailansicht des neu angelegten Artikels läuft der Countdown nun bereits (gegebenenfalls müssen Sie noch die Seite im Browser aktualisieren, um die geänderten Dateien einzulesen). Doch damit dieser ein ordentliches Look&Feel erhält, benötigen wir noch entsprechenden CSS-Code. Diesen fügen Sie am Ende der in Ihrem Vorlagenset genutzten CSS-Datei ein (ebenfalls im Ordner "/themes/[IHR VORLAGENSET]/" zu finden, z.B. "style.css"):
Ist auch dieser Code vorhanden, dann verfügen Sie nun über einen Countdown mit einem vergleichbaren Look&Feel wie oben sichtbar. Dieser zählt einen beliebigen Zeitraum herunter bis auf "00:00:00". Anschließend wird der beim Aufruf der Javascript-Funktion übermittelte Text (hier "Artikel ist jetzt ausverkauft") angezeigt und die Beschriftungen ober- und unterhalb des Countdowns werden ausgeblendet. Bei einem Aufruf der Seite nach dem Ablauf des Countdowns ist direkt dieser Text sichtbar.
Ein derartiger Countdown für den zeitlich limitierten Abverkauf der Artikel wird auch Bestandteil des neuen Vorlagensets für die Shop-Software CP::Shop sein, welches wir in Kürze ausliefern und hier im Blog noch genauer vorstellen werden.