Entwicklerdokumentation

WordPress-Plugin

Plugin aus dem Release-Zip installieren, veröffentlichbaren Schlüssel hinterlegen, Shortcode auf jeder Seite oder in jedem Beitrag platzieren.

Das WordPress-Plugin bringt das Buchungswidget mit einem einzigen Shortcode auf jede Seite und jeden Beitrag. Es bündelt das SDK nicht: Es lädt https://cdn.bookdineplay.com/sdk/v0/bookdineplay.js auf Seiten, die den Shortcode verwenden, sodass SDK-Korrekturen Ihre Website ohne Plugin-Update erreichen.

Installation

  1. Laden Sie bookdineplay-<version>.zip vom neuesten GitHub-Release herunter.
  2. Gehen Sie in wp-admin zu Plugins → Installieren → Plugin hochladen, wählen Sie das Zip, klicken Sie Jetzt installieren und dann Aktivieren bei „BookDinePlay Booking Widget“.
  3. Gehen Sie zu Einstellungen → BookDinePlay und fügen Sie den veröffentlichbaren Schlüssel Ihrer Location ein (bdp_pk_…), aus der Konsole unter Location → API-Schlüssel. Das Feld akzeptiert nur einen Wert, der mit bdp_pk_ beginnt; ein geheimer Schlüssel wird abgelehnt, weil diese Einstellung in Ihre öffentlichen Seiten eingebettet wird.

Voraussetzungen: WordPress 6.0 oder neuer und PHP 7.4 oder neuer.

Shortcode einfügen

Auf jeder Seite oder in jedem Beitrag:

[bookdineplay_widget venue="your-venue" types="RestaurantTable,BilliardTable,DartBoard"]
Attribut Standard Bedeutung
venue demo-sportsbar Der Slug Ihrer Location. Immer setzen.
types RestaurantTable,BilliardTable,DartBoard,BowlingLane Kommagetrennte Ressourcentypen: RestaurantTable, BilliardTable, DartBoard, Shuffleboard, BowlingLane, EventArea.
theme auto auto, light oder dark – siehe Theming.
api https://api.bookdineplay.com Nur bei einer privaten Installation.
key der Schlüssel aus den Einstellungen Ein veröffentlichbarer Schlüssel pro Shortcode, für eine Website, die mehr als eine Location einbettet. Dieselbe bdp_pk_-Regel; alles andere wird abgelehnt und dieser Shortcode rendert nichts (Administratoren sehen den Hinweis zum fehlenden Schlüssel) – es gibt keinen Rückfall auf den Schlüssel aus den Einstellungen.

Mehrere Shortcodes auf einer Seite rendern jeweils ein eigenes Widget.

Origin Ihrer Website erlauben

Der eingefügte Schlüssel ist durch seine Origin-Liste geschützt, nicht durch Geheimhaltung. Legen Sie den Schlüssel mit der Origin Ihrer Website an – https://www.your-venue.example, Schema und Host genau so, wie Besucher sie laden – unter Location → API-Schlüssel in der Konsole; die Origins eines Schlüssels stehen mit dem Anlegen fest, eine neue Origin bedeutet also einen neuen Schlüssel. Ohne sie wird jede Buchungsanfrage mit 403 origin-not-allowed abgelehnt. Authentifizierung hat die Regeln.

Wenn das Widget nicht erscheint

  • Besucher sehen nichts, Administratoren einen Hinweis – es ist kein veröffentlichbarer Schlüssel hinterlegt. Setzen Sie ihn unter Einstellungen → BookDinePlay (oder pro Shortcode mit key).
  • Die Einstellungsseite hat den Schlüssel abgelehnt – Sie haben einen geheimen Schlüssel (bdp_sk_…) eingefügt. Kopieren Sie stattdessen den veröffentlichbaren Schlüssel aus der Konsole.
  • Das Widget rendert, aber jede Anfrage scheitert – die Origin der Website steht nicht auf der Liste des Schlüssels, oder das Attribut api zeigt ins Leere. Der Netzwerk-Tab des Browsers zeigt den Problem-type.

Themes und Gestaltung

Das Widget rendert in einem Shadow DOM; das CSS Ihres Themes beeinflusst es nicht – und es beeinflusst Ihr Theme nicht. Um Farben, Ecken und Schrift anzupassen, setzen Sie die --bdp-*-Custom-Properties im Stylesheet Ihres Themes oder unter Design → Customizer → Zusätzliches CSS; Theming listet sie.

Updates, Datenschutz und CSP

  • SDK-Updates innerhalb der aktuellen Hauptversionslinie kommen automatisch über sdk/v0/; eine neue Hauptversion kommt nur mit einem Plugin-Update.
  • Seiten mit dem Shortcode laden ein Script von cdn.bookdineplay.com und sprechen mit api.bookdineplay.com. Führt Ihre Website eine Liste von Drittanbieter-Hosts (Datenschutzerklärung, CSP, Firewall), ergänzen Sie beide – die JavaScript-SDK-Anleitung zeigt die CSP-Direktiven.
  • Das Plugin speichert keine Geheimnisse und sendet selbst nichts irgendwohin; nur der Browser spricht mit der API, mit dem veröffentlichbaren Schlüssel.

Nächste Schritte

  • Theming – Farben, Radius und Schrift.
  • CDN – was sdk/v0/ verspricht und wie Releases Ihre Website erreichen.