WordPress Menü in Seite einfügen

WordPress Menü in Artikel einfügen

Wenn man individuelle Sidebars bzw. Widgets auf Seiten oder Artikeln einbinden will, kommt man dem Plugin Widget Logic schon ganz gut hin – ab einer bestimmten Seitengröße wird es aber irgendwann zu unübersichtlich und die Conditional Tags mit Widget Logic nehmen überhand und man sieht nicht mehr durch – komplex halt.

Auf jeden Fall hatte ich nach einer Möglichkeit gesucht Menüs / Custom Menus direkt in eine Seite einzubinden und siehe da – mittels Shortcode gibt es eine schnelle Lösung dafür.

Wordpress Menü in Seite einfügen

WordPress Menü in Seite einfügen > via sillybean.net

Ok, hier noch die Kurzanleitung auf Deutsch:

man kopiert den Code von der Seite aus dem Link above und fügt diesen in die functions.php ein. Zu beachten ist natürlich, falls man Twenty Ten verwendet, oder auch ein anderes Theme, dass man am besten mit einem Child Theme arbeitet, sonst sind die Codezeilen ggf. nach dem nächsten Updaten pfutsch.

Hat man dies getan, dann braucht man nur noch den Shortcode [menu name="Hauptmenue"] einfügen – et voilá schon hat man das gewünschte Menü in den Artikel oder die Seite eingefügt.

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

Einfache Lösung die Spass macht. “Hauptmenue” ersetzt man natürlich durch sein eigenes Menü, somit kann man aber ohne viel Arbeit Menüs (bzw. interne Links) via Shortcode einfügen.

Veröffentlicht am
Kategorisiert in Web Verschlagwortet mit ,

8 Kommentare

  1. Hallo,
    ich schaue mich gerade um, was das WP-Menü angeht. Eine Frage: ich habe keine Möglichkeit gefunden, Artikel einzubinden. Nur Seiten und Kategorien. Übersehe ich etwas? Danke!

  2. Hallo, Danke für die Beschreibung und Übersetzung. Deine Beschreibung ist für mich als WP-Neuling insofern unverständlich, als dass ich nicht verstehe in welche Datei ich “[menu name=”Hauptmenue”]” hineinkopieren soll. Auch in die functions.php des themes unterhalb der hinkopierten function?

  3. Hallo, also “[menu name=”Hauptmenue”]” ist der Shortcode, der in den Post / die Seite eingefügt wird. Ich hatte bspw. unter Menü (im WP Backend) ein “Hauptmenue” angelegt mit div. Links – nun braucht man nur noch [menu name=”Hauptmenue”] in einen Beitrag einfügen und die Liste (das Menü) erscheint im Post…

Schreibe einen Kommentar

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