TSMART - TWebshop OnlineBooking
Der TWebshop besteht aus einem Javascript, welche Sie direkt in Ihre Webseite einbinden können. Sprechen Sie zur Einbindung ggf. mit dem technischen Anbieter Ihrer Webseite, falls Sie Unterstützung bei der Einbindung des Skripts benötigen.
Dieser Artikel bietet zudem eine Übersicht, welche Einstellungen im Script direkt getätigt werden können, um Funktion und Erscheinen zu beeinflussen.
1. Experience Detailseite
Dieses Script zeigt die Detailseite der Aktivität / Erlebnis an (Bilder, Beschreibungen, Google Maps etc.).
<!DOCTYPE html>
<html>
<head>
<title>Twebshop - Skript</title>
<meta charset="UTF-8" />
</head>
<body>
<!-- START: Skript für Ihre Webseite -->
<script>
window.TWEBSHOP = {
config: 'sardona_tds',
id: 'TDS00020013104744480',
maxServiceCount: 10,
theme: {
sticky: {
offset: 80,
zIndex: 1
}
}
}
</script>
<style>
#twebshop {
--tw-button-color: #bc2967;
--tw-button-text-color: #fff;
--tw-button-price-color: #2e921d;
--tw-button-price-text-color: #fff;
--tw-box-color: #1d6bb1;
--tw-box-text-color: #fff;
--tw-booking-color: #c4c4c4;
--tw-booking-text-color: #333;
}</style>
<div id=twebshop-experience-shop></div>
<script src="https://twebshop.tomas-travel.com/app/experience/shop/app.js"></script>
<!-- ENDE: Skript für Ihre Webseite -->
</body>
</html>
Bsp. einer Detailseite:
2. Experience WIDGET (nur Suchbox)
Das Widget wird verwendet, wenn die Aktivität / Erlebnis bereits detailliert beschrieben ist oder wenn es keine weiteren Erklärungen braucht.
<!DOCTYPE html>
<html>
<head>
<title>Twebshop - Skript</title>
<meta charset="UTF-8" />
</head>
<body>
<!-- START: Skript für Ihre Webseite -->
<script>
window.TWEBSHOP = {
config: 'sardona_tds',
id: null,
maxServiceCount: 10,
theme: {
sticky: {
offset: 80,
zIndex: 1
}
}
}
</script>
<style>
#twebshop {
--tw-button-color: #bc2967;
--tw-button-text-color: #fff;
--tw-button-price-color: #2e921d;
--tw-button-price-text-color: #fff;
--tw-box-color: #1d6bb1;
--tw-box-text-color: #fff;
--tw-booking-color: #c4c4c4;
--tw-booking-text-color: #333;
}</style>
<tws-experience-widget data-id="TDS00020013104744480"></tws-experience-widget>
<script src="https://twebshop.tomas-travel.com/app/experience/widget/app.js"></script>
<!-- ENDE: Skript für Ihre Webseite -->
</body>
</html>
Beispielansicht eines Widgets:
3. Experience Shop (Gesamtübersicht)
Sie haben viele Produkte / Aktivitäten und wünschen eine Liste mit den verschiedenen Leistungen. Für diese Konfiguration wenden Sie sich bitte direkt an Ihre Destination / Vertragspartner.
<!DOCTYPE html>
<html>
<head>
<title>Twebshop - Skript</title>
<meta charset="UTF-8" />
</head>
<body>
<!-- START: Skript für Ihre Webseite -->
<script>
window.TWEBSHOP = {
config: 'sardona_tds',
id: null,
maxServiceCount: 10,
theme: {
sticky: {
offset: 80,
zIndex: 1
}
}
}
</script>
<style>
#twebshop {
--tw-button-color: #bc2967;
--tw-button-text-color: #fff;
--tw-button-price-color: #2e921d;
--tw-button-price-text-color: #fff;
--tw-box-color: #1d6bb1;
--tw-box-text-color: #fff;
--tw-booking-color: #c4c4c4;
--tw-booking-text-color: #333;
}</style>
<div id=twebshop-experience-shop></div>
<script src="https://twebshop.tomas-travel.com/app/experience/shop/app.js"></script>
<!-- ENDE: Skript für Ihre Webseite -->
</body>
</html>
Beispielansicht eines Shops:
3. Experience WIDGET Multi
(mehrere Suchboxen auf der gleichen Seite)
Beispielansicht einer Seite mit mehreren Buchungswidgets:
5. Konfiguration / Parametrisierung
Skript
window.TWEBSHOP = {}
config
required
Diese besteht aus dem Namen der Konfiguration und der dazugehörigen TOMAS Instanz, getrennt durch einen Unterstrich. z.b. test_oem oder bwc_btm.
Die Konfiguration bzw. den einzutragenden Wert erhalten Sie von uns.
role
optional
Hierüber kann eine abweichende Portalrolle auf der Buchung gesetzt werden. Die ID entspricht der ID des touristischen Partners aus TOMAS und hat beispielsweise dieses Format: OEM00020100231179610
Dies ist z.B. für Affiliateportale interessant. Wird dieser Parameter nicht mitgegeben, so gilt der TOMAS-Standard für das Setzen der Portalrolle.
Beispiel:
role : 'OEM00020100231179610'
id
optional (bei Shop)
Die ID der Experience / bzw. die ID des touristischen Gruppenobjekts
Bei der Verwendung im Shop wird damit direkt die Detailseite aufgerufen
language
optional (de, en, fr, it)
Mit der Einstellung language
kann man die Sprache (momentan en oder de) der App definieren. Der Sprachswitcher in der App erscheint nur, wennlanguage
nicht vorhanden, null oder '' ist.
features
optional (Shop)
Die Mitgabe von Merkmals-IDs erzeugt Ergebnislisten auf die mitgegebene ID.
Beispiel:
features: 'OEM00020100232754857'
Bei mehreren IDs können diese kommagetrennt hinterlegt werden, es erfolgt eine VerUNDung.
emailConfirm
optional
Um Eingabefehlern auf Ebene der Mailadressenerfassung entgegenzuwirken, haben wir im Warenkorb des TWebshops/Widgets einen weiteren Parameter geschaffen.
Der Paramater lautet wie folgt:
cart: {
emailConfirm: true
}
Wird dieser Parmater im Skript entsprechend gesetzt, muss der Gast bei Abschluss des Warenkorbes, seine Mailadresse zweifach erfassen.
Standardmäßig ist der Parmater deaktiviert/nicht definiert. Bitte beachten Sie, dass die Nutzung des Parameters ggf. negative Auswirkungen auf Ihre Conversion haben kann.
data-min-persons
optional
Ermöglicht die Kontrolle der Mindestanzahl an gebuchten Tickets.
Zb :
<tws-experience-widget data-min-persons="5" data-personcategories="TBX00020010001915084" data-id="OEM00020100241018235"></tws-experience-widget>
maxServiceCount
optional
Über diesen Skriptparameter ist es möglich die Anzahl der Leistungen/Anzahl Tickets global zu begrenzen.
Zb :
window.TWEBSHOP = {
config: 'test_oem',
role: '',
language: null,
maxServiceCount: 10,
}
data-max-service-count="X"
optional
Analog zum globalen Skriptparameter “maxServiceCount” ist es möglich die Anzahl der Leistungen/Anzahl Tickets pro Widget zu begrenzen.
Beide Parameter können unabhängig voneinander genutzt werden.
Dabei überschreibt der Widget Parameter (data-max-service-count) den Skriptparameter (maxServiceCount)
Das bedeutet, man kann auf einer Seite z.b. für alle eingebundenen Widget einen Maximalwert von 20 setzten und dann individuell pro Widget mehr oder weniger zulassen.
Zb :
<tws-experience-widget data-max-service-count="2" data-id="XXXXXXXXXXXXXXXXXXXX"></tws-experience-
theme.sticky
optional
theme.sticky.offset
in Pixel angeben
data-fix-date
optional
Dieser Parameter legt ein festes Datum für das Widget fest.
Die Datumauswahl wird ausgeblendet.
Zb :
data-fix-date="2023-01-01"
data-end-date="x"
optional
Über den Parameter kann das wählbare Kontingent für den Gast im Widget eingeschränkt werden.
Im Kalender können nur noch Kontingente für die nächsten “X” Tage gewählt werden.
Zb :
data-end-date="7"
data-begin-date="x"
optional
Über den Parameter kann das wählbare Kontingent für den Gast im Widget eingeschränkt werden.
Im Kalender können nur noch Kontingente gewählt werden, welche mindestens “X” Tage in der Zukunft liegen.
Zb :
data-begin-date="2"
hideTax
optional (widget)
Ermöglicht das Ausblenden der Mehrwertsteuer
Achtung der Parameter „theme“ muss mit “,“ abgeschlossen werden, um den „cart“ zu berücksichtigen
data-categories
optional
Über diesen Parameter können Kategorien im Vakanzergebnis ausgeblendet werden. Es erscheinen dann nur die angegebenen Kategorien.
Zb :
data-categories="TDS00020100241191621"
data-personcategories
optional (Widget)
Durch die Mitgabe von Personenkategorien (z.B. Erwachsene, Kinder, Familien, usw) können Sie im Widget steuern, dass du nur speziell die gewünschte Personenkategorie(n) im Widget zur Auswahl stehen.
Beispiel der Mitgabe:
<tws-experience-widget data-id="OEM00020100238722450" data-personcategories="TBX00020010001915084" />
Mehrere Personenkategorien können mit ,
getrennt übergeben werden.
Übersicht der verfügbaren Personenkategorien:
Personenkategorien-ID | Bezeichung der Personenkategorie |
---|---|
TBX00020010001915084 | Erwachsener |
TBX00020010001917184 | Kleinkind |
TBX00020010001915086 | Kind |
TBX00020010001915085 | Jugendlicher |
TBX00020010001915422 | Senioren |
TBX00020010001915088 | Familie |
TBX00020010001915091 | Student |
TBX00020010001915087 | Behinderte |
TBX00020010001915424 | Sonstige Person |
TBX00020010001915089 | Gruppe |
data-person-category-sort
optional (Widget)
Ermöglicht das Sortieren der Reihenfolge (A-Z), in der Preisvarianten angezeigt werden.
<tws-experience-widget data-id="TDS00020014888744333" data-person-category-sort="sortname"></tws-experience-widget>
data-begin-date="2023-05-15"
optional
data-end-date="2023-05-30"
Mit diesen Parametern, kann unabhängig davon, wie der Belegungskalender gepflegt ist, gesteuert werden, von wann bis wann die Datumsauswahl zur Verfügung steht. Die klickbaren Tage werden dadurch eingeschränkt.
searchDays : 365
optional (Shop Ansicht)
Mit diesen Einstellungen steuern Sie die Anzahl der Tage, die in der Datumsmaske für die Shop-Anzeige gesucht werden. (z.B. 365 Tage: Von [heute] bis [heute+365Tage].
customer
optional
Mit dieser Funktion können Kundenadressen übergeben werden (z.B. aus einem Gästekartensystem).
cart: {
customer: {
id: "AFA7DE1E3FD314F222672E72150D24A1", //AVS Hash
type: "avs", // immer "avs"
address: {
personType : "Herr", //Herr (1), Frau (2), Familie (3), Divers (4)
firstname : "Max",
lastname : "Muster",
street : "Rue du midi 3",
zip : "123123",
city : "Luzern",
country : "ch", // 2-digit country code
email : "guido.jungen@tomas.ch",
email_confirm: "guido.jungen@tomas.ch",
language : 'de', // 2-digit language code
phone : "+46 324234 23"
}
Achtung der Parameter „theme“ muss mit “,“ abgeschlossen werden, um den „cart“ zu berücksichtigen
Farben
Der Konfigparameter theme.colors
wird in ein neues CSS Format gebracht.
Mit dem neuen <style>
Attribut kann man die Farbe der Button, Boxen und BookingBox und der enthaltenen Schrift definieren. Farben müssen im HEX Format sein!
Übersicht der Farb-Parameter und deren Auswirkung:
Diese beiden Farb-Parameter haben ausschließlich in der speziellen Destinationskarten-Ansicht (die Ansicht, welche speziell für Städtekarten konzipiert wurde) eine Auswirkung:
HTML - Tag
id
required (bei Widget)
<tws-experience-widget data-id="OEM00020100238722450"></tws-experience-widget>
SHOP<div id="twebshop-experience-shop"></div>
<script src="https://twebshop.tomas-travel.com/app/experience/shop/app.js"></script>
WIDGET<tws-experience-widget data-id="[ID der Experience]"></tws-experience-widget>
<script src="https://twebshop.tomas-travel.com/app/experience/widget/app.js"></script>
In dieses HTML Element wird die App eingebettet. Das Element kann auf der Seite beliebig platziert werden, sollte aber in der Breite (> 1024 px) genug Platz haben.
URL - Parameter
Anreise und Abreisezeitraum
Im Shop können die Daten als URL-Parameter mitgegeben werden.
?dateFrom=2023-03-10
&dateTo=2023-03-20
Suchtext
&q=xxxx