
Shortcodes sind einer der Höhepunkte von WordPress. Shortcodes schlagen die Brücke zwischen Entwicklern und Website-Erstellern und ermöglichen es, komplexe Inhalte fast überall nach Belieben zu platzieren. Plugin-Entwickler lieben Shortcodes, da sie mehr Flexibilität dabei bieten, wie und wo ihre Nutzer Inhalte anzeigen.
Wenn Sie nicht wissen, was Shortcodes sind und wie sie aussehen: Es handelt sich um jene archaisch anmutenden, codeähnlichen Texte in eckigen Klammern. Sie sehen etwa so aus:
Dieser spezielle Shortcode nennt sich Embed-Shortcode und ist standardmäßig in WordPress integriert. Er bettet das Video von der URL direkt in Ihre Inhalte ein. Kopieren Sie den obigen Shortcode einfach auf Ihre Website, wenn Sie ihn einmal ausprobieren möchten.
Hinter den Kulissen passiert Folgendes: Wenn WordPress in Ihren Inhalten auf einen Shortcode stößt, wird dieser verarbeitet und in etwas anderes umgewandelt. In unserem obigen Fall, wann immer ein
-Shortcode erkannt wird, nimmt WordPress die URL im Shortcode und gleicht sie mit einer Reihe von Content-Providern ab, die es unterstützt. Wird ein Treffer gefunden, ruft WordPress den entsprechenden Iframe-Einbettungscode ab und zeigt stattdessen diesen an.
Wo liegt also das Problem? Es klingt doch ganz einfach: Man gibt einfach einen kurzen Text in Klammern ein und ist fertig.
Hier kommt die Shortcode-API ins Spiel …
Shortcodes in Hülle und Fülle
Die Shortcode-API eröffnet Entwicklern die Möglichkeit, eigene Shortcodes zu erstellen. Dadurch können Entwickler ihre ganz eigenen Shortcodes in ihre Plugins integrieren.
Das ist großartig: Mit nur einem kurzen, codeähnlichen Schnipsel (daher der Name „Shortcode“) können Anfänger wie auch Fortgeschrittene praktisch jede Art von Inhalt überall dort platzieren, wo sie möchten.
WordPress verfügt standardmäßig nur über eine Handvoll Shortcodes. Es ist leicht, sie aus dem Gedächtnis einzutippen, da es nur so wenige gibt. Doch wenn Sie ein paar Plugins installieren, steigt die Zahl der Shortcodes schnell auf ein Dutzend oder mehr – in manchen Fällen sogar auf über hundert. Jeder Shortcode hat seine eigenen Attribute und Anweisungen für die Verwendung. Höchstwahrscheinlich bietet jedes Plugin eine Art Dokumentation, die erklärt, wie all seine Shortcodes funktionieren, und alle verfügbaren Parameter auflistet. Aber man müsste verrückt sein, um zu versuchen, sich alle Shortcodes und deren Attribute zu merken.
Das Problem ist, dass es keinen zentralen Ort gibt, an dem man alle auf der Website verfügbaren Shortcodes und deren Verwendung einsehen kann.
Einige versuchen, das Problem zu lösen
Einige Plugins versuchen, dieses Problem zu lösen, indem sie all ihre eigenen Shortcodes in einem leicht zugänglichen Dropdown-Menü präsentieren. Ein Klick darauf gibt dann den Shortcode aus – komplett mit allen möglichen Attributen. Man muss sie sich nicht mehr merken, was eine feine Sache ist.

Manche gehen noch weiter und fügen ein Popup-Formular für Einstellungen hinzu, das Kontrollkästchen und Farbwähler enthält, um die Attribute des Shortcodes auszufüllen.

Diese Lösung funktioniert gewissermaßen. Allerdings listet jedes Plugin nur seine eigenen Shortcodes auf. Wenn also jedes Plugin seine eigene Art von Shortcode-Auswahl erstellt, passiert es unweigerlich, dass Sie mehrere Shortcode-Auswahlelemente auf Ihrem Bildschirm haben (mir ist das schon passiert).

Mit anderen Worten: Jedes Plugin macht sein eigenes Ding und implementiert seine eigene Lösung für die eigenen Shortcodes. Einige Plugins fügen entweder einen neuen Button neben der Schaltfläche „Dateien hinzufügen“ oder einen neuen innerhalb von TinyMCE ein.
Vielleicht denken Sie jetzt: „Warum sammelt man nicht einfach auch die Shortcodes anderer Plugins und bindet sie ebenfalls in das Dropdown bzw. die Shortcode-Auswahl ein?“ Nun, genau das habe ich auch gedacht. Aber das ist leichter gesagt als getan. Ich erkläre gleich, warum, aber schauen wir uns zuerst an, wie eine ideale Lösung aussehen würde.
Die ideale Lösung
Der perfekte Plan wäre es, ein Plugin zu erstellen, das alle auf Ihrer Website verfügbaren Shortcodes zusammenträgt, Ihnen die Liste präsentiert und Ihnen zudem hilft, alle Attribute auszufüllen. Und jedes Mal, wenn Sie ein neues Plugin installieren, würden Ihnen auch all diese neu hinzugekommenen Shortcodes angezeigt werden.
Stellen Sie sich einen zentralen Ort vor, an dem alle Ihre Shortcodes für einen einfachen Zugriff abgelegt sind. Bei jedem Shortcode würde beschrieben, was er tut und zu welchem Plugin er gehört. Und stellen Sie sich vor, für jedes verfügbare Attribut gäbe es eine Beschriftung, eine passende Möglichkeit zur Auswahl eines Wertes und eine Beschreibung. Es würden Ihnen Dropdowns, Farbwähler, Optionsfelder, Schalter und alles Mögliche angezeigt.
So etwas würde unser Leben als Website- und Content-Ersteller erleichtern. Kein Durchforsten verschiedener Dokumentationen mehr oder Durchsuchen verschiedener Bereiche des Dashboards, nur um einen generierten Shortcode für einen Slider zu kopieren, den man verwenden möchte.
Der Haken an der Sache
Leider ist es derzeit ziemlich schwierig, so etwas umzusetzen. Es gibt keinen verlässlichen Weg, alle Details eines Shortcodes zu ermitteln. Man kann zwar eine Liste aller Shortcodes abrufen, aber nur deren eigentliche Tags/Namen; zusätzliche Details wie eine Liste der Attribute, deren Funktion und Typen – wie eine Zeichenkette, eine Farbe oder eine Zahl – lassen sich nicht abrufen. Ebenso wenig gibt es auch nur ansatzweise eine Beschreibung für jedes Attribut.
Hinweis für die Entwickler da draußen: Ja, es gibt ein neu hinzugefügtes drittes Argument für die Funktion shortcode_atts, aber es ist kein Pflichtargument. Solange also nicht jeder Plugin-Entwickler auf der Welt dieses implementiert, haben wir immer noch keinen sicheren Weg, alle Attribute eines Shortcodes zu bestimmen.
Die Shortcode-API bietet keinerlei Möglichkeit zum Hinzufügen von Shortcode-Beschreibungen, Typisierungen von Attributen oder Attributbeschreibungen. Und solange WordPress selbst keinen zentralen Bereich für den Zugriff auf Shortcodes hinzufügt, bezweifle ich, dass eine solche Möglichkeit geschaffen wird.
Fazit
Derzeit ist die Organisation von Shortcodes jedem Entwickler selbst überlassen. Solange keine zentrale Methode innerhalb von WordPress entwickelt wird, ist damit zu rechnen, weiterhin mehrere „Shortcode hinzufügen“-Buttons im Backend zu sehen. Ob so etwas in den WordPress-Core aufgenommen werden sollte oder nicht, ist wiederum eine ganz eigene, große Diskussion.
Eine Alternative
Es gibt Page-Builder-Plugins, die dieses Problem anders angehen. Anstatt Shortcodes programmatisch zu erkennen, verfügen sie über Shortcode-Mapper, bei denen Nutzer jedes Detail eines Shortcodes manuell eingeben können. Sobald dies erledigt ist, steht er innerhalb des Page Builders zur Verfügung. Während dies zwar funktioniert, sind diese nur auf Ihrer eigenen Website verfügbar.
Wir hier bei Page Builder Sandwich arbeiten an etwas, das dieses Shortcode-Dilemma hoffentlich lösen kann. Abonnieren Sie unten unseren Newsletter, um über unsere Fortschritte auf dem Laufenden gehalten zu werden.