Zur Anbindung an co*pilot wurde ein einfaches WordPress Plugin als Basis für weitere Anpassungen geschaffen.
Wir können leider keinen Support für das Plugin übernehmen.
Das Plugin kann hier heruntergeladen werden:
Anleitung zum installieren von Plugins
API Serverdaten eingeben
- 1. API-URL zur co*pilot Instanz
z.B. https://copilot.events/demo/api/ (Achtung abschließenden „/“ beachten) - API Token
Siehe auch Zugangsverwaltung.
Infos zu den verfügbaren Daten sind unter read-api zu finden.
Das Plugin ist frei veränderbar.
Changelog
Version: 1.1 vom 02.02.2023
Features:
- Markdown Helper
Bugfixes:
- Events ohne VVK-Stand-Einträge werden als ausverkauft gekennzeichnet
Shortcodes
Um das Plugin einzubinden, verwende folgende Shortcodes:
[copilot promotiontype="1homepage"]
Liste aller für Promotion „Homepage“ freigegebenen Events aus co*pilot[copilot id="id_des_events"]
spezifisches freigegebenes Event aus co*pilot[copilotArtists]
Liste aller freigegebenen Künstler aus co*pilot[copilotArtists id="id_des_künstlers"]
spezifischer freigegebener Künstler aus co*pilot
Promotions
Standardmäßig existieren in co*pilot zwei Promotions:
- 1homepage
- 2highlight
[copilot promotiontype="1homepage"]
Details unter https://support.ov2b.de/docs/read-api#promotions
Künstler
Zusätzlich gibt es einen copilotArtistEvents Shortcode, der alle Events eines Künstlers (gegeben durch eine id) ausgibt.
[copilotArtistEvents id="abc"]
Pagination
Im Shortcode kann ein Parameter pagination übergeben werden, um die Anzahl der Ergebnisse pro Seite zu definieren (Default 20).
[copilot pagination="30"]
In den Listen Templates wird die Pagination über folgende Parameter gesteuert:
- paginationSkipMinusShow Parameter um die prev Pagination einzublenden
- paginationSkipPlusShow Parameter um die next Pagination einzublenden
- paginationTake die Anzahl der Datensätze pro Seite
- paginationSkipMinus die Anzahl der vorherigen zu Datensätze
- paginationSkipPlus die Anzahl der nächsten zu überspringenden Datensätze
Beispiel
<div class="pagination">
<div>
{{#if .paginationSkipMinusShow}}<a
href="?pagination_take={{.paginationTake}}&pagination_skip={{.paginationSkipMinus}}">
<< vorherige Seite</a>{{/if}}
</div>
<div>
{{#if .paginationSkipPlusShow}}<a
href="?pagination_take={{.paginationTake}}&pagination_skip={{.paginationSkipPlus}}">
nächste Seite >></a>{{/if}}
</div>
</div>
Datums-Filter
Zeitraum über folgende zwei Parameter:
- from
- to
„from“ und „to“ werden als Datum im Format „yyyy-MM-dd“ angegeben
Der default für „from“ ist der aktuelle Tag, der default für „to“ 90 nach dem aktuellen Tag.
[copilot from="2022-05-12" to="2023-01-01"]
Bilder
Als Hauptbild, welches in der Liste und als großes Bild im Detail angezeigt wird, wird ein Bild mit folgenden Kriterien herangezogen:
- Es ist in co*pilot mit dem Tag „Hauptbild“ versehen
- Es ist als öffentlich gekennzeichnet
Ist kein solches Bild im Event verfügbar, wird im Künstler-Programm gesucht. Ist auch hier kein solches Bild verfügbar, wird im Künstler gesucht.
Alle Bilder liegen in den folgenden Größen vor: 640, 750, 828, 1080, 1200, 1920, 2048, 3840
Code Beispiel
<img src="{{ .mainImage.sizes.640 }}" loading="lazy" style="object-fit: cover; width: 200px; height: 200px" />
Informationen
Feld | Beschreibung | Code |
---|---|---|
Event Informationen | ||
Info lang | Presseinfo (Langversion) | {{ eventInformations.info – lang.value }} |
Info kurz | Presseinfo (Kurzversion) | {{ eventInformations.info – kurz.value }} |
Ticketlink | {{ eventInformations.ticketlink.value }} |
Templates
Alle Templates sind nur beispielhaft und können dirket im Code oder über „Templetes“ angepasst werden.
Als Variablen System wurde PHP Handlebars verwendet.
Die im WordPress-Template zur Verfügung stehenden Daten enthalten alle Daten der read-api, werden allerdings um denormalisierte Daten erweitert. Das lässt sich am einfachsten über „Test API Call“ in WordPress-Untermenu dieses Plugins nachvollziehen.
Helper
Folgende Helper wurden zusätzlich implementiert:
Name | Beschreibung | Code |
---|---|---|
parsedown | Wandelt Markdown in HTML | {{#parsedown eventInformations.info-kurz.value}} |