Mit Shortcodes kann ich doch nur daten anzeigen oder kann ich damit auch Daten eingeben?
Du kannst mit einem Shortcode auch Attribute übergeben.
Ich hab gerade erst zu einer anderen Frage hier im Forum ein kleines Plugin geschrieben, das Dateien aus einem Verzeichnis ausliest und per Shortcode in einer Seite oder einem Beitrag ausgibt:
https://github.com/pixolin/pix-dirlisting/blob/main/pix-listing.php#L24
Der Shortcode lautet hier [dirlisting name="{verzeichnisname}"]
, der Anwender kann also als Attribut angeben, welches Unterverzeichnis ausgegeben werden soll.
… oder bezieht sich „Daten eingeben“ auf Webseitenbesucher, die z.B. ein Formular ausfüllen sollen? Die Kontaktformular-Plugins, die mir spontan einfallen, bieten alle einen Shortcode an, um im Frontend ein Formular auszugeben.
Und bevor ich ein Theme baue …
Kann es sein, dass du das völlig falsch verstanden hast? 🙂
Du hast nach der Performance von Shortcodes gefragt und der Vollständigkeit halber habe ich erwähnt, dass es die Möglichkeit gibt, mit do_shortcode()
einen Shortcode in einem Theme-Template auszuführen. Das ist aber nicht so performant, wie wenn du die Funktion, die mit dem Shortcode verknüpft ist, direkt aufrufst.
Die Tatsache, dass man (irgendwer, nicht du) in einem Theme Shortcodes ausführen kann bedeutet aber nicht, dass du das machen sollst. 🙂
Nach meinem Verständnis sind Themes in erster Linie das Look & Feel und sollten m.E. für bessere Austauschbarkeit nur bedingt Code / Funktionen beinhalten.
Korrekt. Shortcodes sollten mit einem eigenen kleinen Plugin eingebunden werden. Das ist aber keine Raketenwissenschaft. Kleine Anleitung gefällig?
- Du erstellst auf deinem Computer ein Verzeichnis
abcshortcode
.
- In dem Verzeichnis erstellst du mit einem Code-Editor eine Datei
abcshortcode.php
.
- In der Datei fügst du folgende Zeilen ein:
<?php
/*
* Plugin Name: ABC Shortcode
* Description: Fügt den Shortcode [abc] hinzu.
*/
add_shortcode( 'abc', 'abc_shortcode' );
function abc_shortcode() {
return '<h2>Mein Shortcode wird hier ausgegeben.</h2>';
}
- Du komprimierst das Verzeichnis
abcshortcode
als zip-Datei und installierst es über Plugins > Installieren > Hochladen. Aktivieren, in einer Seite [abc]
eingeben, testen.
Wie das mit den Attributen funktioniert, kannst du in der Dokumentation und zahlreichen Tutorials im Web nachlesen.
Widgets sind Steuerelemente, wie Buttons und Textfelder auch, nur mit besonderer Funktion.
Widgets sind sowas von 90er Jahre … 😀
Im Ernst: hast du schon mal im Smartphone eine Sidebar gesehen? Und wie häufig tippst du bei der Desktop-Ansicht auf die Widget-Links? Es hat schon einen Grund, wieso Widgets bei den neuen Standard-Themes (seit „Twenty Twenty“) in den Footer gewandert sind.