Ein WordPress Widget in einem Post oder Seite darstellen

Von | 2. Februar 2020

WordPress Widgets sind ja schon eine feine Sache. Nur leider sind diese meistens auf die SideBar beschränkt.
Ich wollte aber ein Widget in einer meiner eigenen Template-Seiten darstellen. Dies geht wie folgt:

In der functions.php setzen wir folgenden Code ein:




function print_menu_shortcode($atts, $content = null) {
    extract(shortcode_atts(array( 'name' => null, ), $atts));
    return wp_nav_menu( array( 'menu' => $name, 'echo' => false ) );
}
add_shortcode('menu', 'print_menu_shortcode');



—-






function print_menu_shortcode($atts, $content = null) {
extract(shortcode_atts(array( 'name' => null, 'class' => null ), $atts));
return wp_nav_menu( array( 'menu' => $name, 'menu_class' => $class, 'echo' => false ) );
}
add_shortcode('menu', 'print_menu_shortcode');



In der entsprechenden Seite packen wir dann folgenden Code hinein:




[_menu name="-your menu name-" class="-your class-»_]



Wichtig: Der Unterstrich bei beiden Eckklammern muss entfernt werden!

oder im jeweiligen PHP Quellcode folgendes:

  do_shortcode();

Pack nun folgendes in die () Klammern:''

So. Das wars schon.

Schreibe einen Kommentar

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

Im Rahmen der Kommentarfunktion auf dieser Website werden neben Ihrem Kommentar auch Angaben zum Zeitpunkt der Erstellung des Kommentars und der von Ihnen gewählte Kommentatorenname gespeichert und auf der Website veröffentlicht. Ferner wird Ihre IP-Adresse mit protokolliert und gespeichert. Diese Speicherung der IP-Adresse erfolgt aus Sicherheitsgründen und für den Fall, dass die betroffene Person durch einen abgegebenen Kommentar die Rechte Dritter verletzt oder rechtswidrige Inhalte postet. Mehr Informationen zur Datenverarbeitung, der Rechtsgrundlage und Ihren Widerrufsrechten erhalten Sie in unserer Datenschutzerklärung