WordPress: Eigener Shortcode selber machen um die Uhrzeit anzuzeigen

Dieses Beispiel soll Dir zeigen, wie Du in WordPress ein eigener Shortcode selbst erstellen kannst. Dazu schreibst Du eine kleine PHP-Funktion, welche die aktuelle Zeit ausgibt, und per Shortcode aufgerufen werden kann.

Als erstes gehst Du in die functions.php Deines vorher erstellten Childthemes. Wie und warum Du ein Childtheme erstellen solltest findest Du auf dem Blog der Netzialisten sehr gut erklärt.

Die functions.php Deines Childthemes findest Du unter „Design > Editor“. Dabei ist wichtig, dass Du dein Childtheme auch aktiviert hast.

 

 

Dort fügst Du folgenden Code ein:

function uhrzeit_anzeigen() { 
	date_default_timezone_set('Europe/Zurich'); 
	$uhrzeit = date("H:i",time());
	return $uhrzeit ;
}
add_shortcode( 'uhrzeit-anzeigen', 'uhrzeit_anzeigen' );
add_filter('widget_text','do_shortcode');

Die PHP-Funktion uhrzeit_anzeigen() ermittelt die aktuelle Uhrzeit und gibt diese zurück.

Mit add_shortcode(‚uhrzeit-anzeigen‘,’uhrzeit_anzeigen‘) wird der Shortcode „uhrzeit-anzeigen“ mit der Funktion uhrzeit_anzeigen verknüpft.

Und mit add_filter(‚widget_text‘,’do_shortcode‘) wird ermöglicht, dass der Shortcode auch im Text-Widget funktioniert. Diese Codezeile ist nur nötig, wenn Du den Shortcode auch in einem Text-Widget verwenden willst.

 

 

Schon kannst Du den erstellten Shortcode verwenden um die Uhrzeit anzuzeigen: Wo Du „[uhrzeit-anzeigen]“ schreibst, wird dann „03:59“ angezeigt.

Falls du die Zeit in einem Text-Widget anzeigen willst, gehst Du auf „Design > Widgets“ und ziehst mit der Maus „Text (Normaler Text oder HTML.)“ an die Stelle auf der rechten Seite, an der Du das Widget anzeigen möchtest. Jetzt musst du nur noch beim Widget unter „Inhalt“ den selbst erstellten Shortcode platzieren: [uhrzeit-anzeigen]

Deine Erfahrungen?

Für was benutzt Du Shortcodes in WordPress? Hast Du noch Ergänzungen zum Beitrag? Verbesserungsvorschläge? Fragen? Anregungen? Kritik? Ich freue mich über jeden Kommentar 🙂

Leave A Reply

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert