Vertrauenswürdige WordPress-Tutorials, wenn Sie sie am dringendsten benötigen.
Anfängerleitfaden für WordPress
WPB Cup
25 Millionen+
Websites, die unsere Plugins verwenden
16+
Jahre WordPress-Erfahrung
3000+
WordPress-Tutorials von Experten

So zeigen Sie eingeloggten Benutzern unterschiedliche Menüs in WordPress an

Haben Sie sich jemals gefragt, wie verwirrend es für die Besucher Ihrer WordPress-Website sein kann, wenn sie angemeldet sind, aber immer noch überall „Anmelden“ oder „Registrieren“-Schaltflächen sehen? Oder vielleicht haben Ihre Mitglieder Schwierigkeiten, ihr Konto-Dashboard zu finden, weil es im Menü versteckt ist.

Diese kleinen Frustrationen können dazu führen, dass sich selbst Ihre treuesten Benutzer auf Ihrer eigenen Website wie Außenseiter fühlen.

Und ein personalisiertes Menü kann den Unterschied ausmachen. Wenn Sie eingeloggten Benutzern Optionen wie „Mein Konto“ oder „Abmelden“ anstelle von generischen Links anzeigen, fühlt sich Ihre Website einladender und professioneller an.

Die gute Nachricht? Das Erstellen dynamischer Menüs in WordPress ist einfacher, als Sie vielleicht denken.

In diesem Leitfaden zeigen wir Ihnen zwei einfache Methoden, um eingeloggten Benutzern unterschiedliche Menüs anzuzeigen, unabhängig von Ihrem Kenntnisstand. 💡

Anzeigen unterschiedlicher Navigationsmenüs für angemeldete und nicht angemeldete Benutzer in WordPress

Warum unterschiedliche Menüs für angemeldete Benutzer in WordPress anzeigen?

Das Ändern verschiedener Bereiche Ihrer WordPress-Website basierend auf Ihren Besuchern und deren Aktivitäten lässt Ihre Website für jeden Benutzer personalisiert wirken.

Dieser personalisierte Inhalt hilft Ihnen, die Benutzererfahrung auf Ihrer WordPress-Website zu verbessern.

Wenn Sie eine Website betreiben, auf der sich Benutzer nicht registrieren oder anmelden müssen, können Sie wahrscheinlich dieselben Navigationsmenüs auf Ihrer gesamten Website verwenden. Andere Websites können jedoch stark davon profitieren, eingeloggten Benutzern benutzerdefinierte Menüs anzuzeigen.

Zum Beispiel können Websites wie ein Online-Shop, eine Online-Lernplattform oder eine WordPress-Mitgliederseite-Community von personalisierten Navigationsmenüs profitieren.

Ein personalisiertes Navigationsmenü für eingeloggte Benutzer hilft ihnen, Dinge, für die sie sich angemeldet haben, leichter zu finden.

Zum Beispiel kann ein Benutzer in einem Online-Shop sein Konto verwalten, oder ein Mitglied einer kostenpflichtigen Community kann sein Abonnement einfach verlängern oder die exklusiven Online-Kurse ansehen, die er gekauft hat.

Unterschiedliches Menü für eingeloggte Benutzer

Standardmäßig können Sie in WordPress so viele Navigationsmenüs erstellen, wie Sie möchten. Sie können jedoch nur ein Menü an einem bestimmten Ort in Ihrem WordPress-Theme anzeigen lassen.

Bevor Sie Menüs für eingeloggte Benutzer einrichten, müssen Sie zunächst zwei separate Navigationsmenüs erstellen. Ein Menü ist für eingeloggte Benutzer und das andere für ausgeloggte Benutzer. Legen wir los.

⚠️ Nur eine kurze Notiz! Die von uns vorgestellten Methoden sind für Personen gedacht, die klassische WordPress-Themes verwenden. Wenn Sie ein Block-Theme mit Full Site Editing (FSE) Funktionen ab WordPress 5.8 verwenden, funktioniert diese Methode möglicherweise nicht. 

Menüs für angemeldete und nicht angemeldete Benutzer in WordPress erstellen

Um separate Menüs für die beiden Benutzertypen zu erstellen, gehen Sie zur Seite Darstellung » Menüs im WordPress-Dashboard.

Wenn Sie bereits ein Navigationsmenü haben, das Sie auf Ihrer Website für alle Benutzer verwenden, kann dies Ihr Standardmenü sein.

Hauptmenü

Danach können Sie auf den Link 'Neues Menü erstellen' klicken, um ein neues benutzerdefiniertes Menü für Ihre eingeloggten Benutzer zu erstellen.

Fügen Sie hier Menüpunkte hinzu, die Sie registrierten oder angemeldeten Benutzern anzeigen möchten. Sie könnten zum Beispiel einen Logout-Link zu Ihrem Menü hinzufügen.

Auf der linken Seite des Bildschirms sehen Sie eine Liste Ihrer Website-Seiten. Aktivieren Sie einfach das Kontrollkästchen neben jeder Seite, die Sie zu Ihrem Menü hinzufügen möchten, und klicken Sie auf die Schaltfläche „Zum Menü hinzufügen“.

Angemeldetes Menü

Sie können die Menüpunkte auf der rechten Seite des Bildschirms auch per Drag & Drop verschieben, um sie neu anzuordnen.

Weiter unten auf der Seite können Sie eine Position auswählen, an der Ihr Menü angezeigt werden soll. Sie müssen diesem Menü jedoch jetzt keine Position zuweisen. Das werden wir später im Artikel tun.

Vergessen Sie nicht, auf die Schaltfläche „Menü speichern“ zu klicken, um Ihre Änderungen zu speichern.

Weitere Details zur Erstellung von Menüs findest du in unserer Anleitung für Anfänger zu WordPress-Navigationsmenüs.

Jetzt sind Sie bereit, eingeloggten Benutzern unterschiedliche Menüs anzuzeigen. Hier ist eine kurze Übersicht über alle Methoden, die wir in diesem Leitfaden behandeln werden:

Bereit für ein maßgeschneidertes Erlebnis? Tauchen wir ein! 🌟

Methode 1. Unterschiedliche Menüs für angemeldete Benutzer in WordPress mit einem Plugin anzeigen

Der einfachste Weg, eingeloggten Benutzern unterschiedliche Menüs anzuzeigen, ist die Verwendung des Conditional Menus Plugins. Installieren und aktivieren wir es also zuerst.

Weitere Details finden Sie in unserer Schritt-für-Schritt-Anleitung zum Thema Installieren eines WordPress-Plugins.

Nach der Aktivierung müssen Sie in Ihrem WordPress-Dashboard zu Design » Menüs navigieren. Wechseln Sie dann zur Registerkarte „Standorte verwalten“.

Von hier aus sehen Sie die Liste der verfügbaren Menüpositionen, die in Ihrem WordPress-Theme definiert sind, und die Menüs, die derzeit angezeigt werden.

Zum Beispiel zeigt unser „Primäres Menü“-Standort derzeit ein „Hauptmenü“ an.

Menüpositionen verwalten

Jetzt müssen wir dem Plugin sagen, dass es ein anderes Menü anzeigen soll, wenn eine bestimmte Bedingung erfüllt ist.

Um das zu tun, klicken wir auf den Link „+ Bedingungsmenü“. Dann können Sie aus dem Dropdown-Menü das Navigationsmenü auswählen, das Sie den angemeldeten Benutzern anzeigen möchten.

Eingeloggtes Menü auswählen

Als Nächstes möchtest du auf den Link „+ Bedingungen“ klicken.

Dies öffnet ein Popup-Fenster, in dem Sie eine Reihe von Bedingungen zur Auswahl sehen.

Wähle den angemeldeten Benutzer als Bedingung aus

Aktivieren Sie einfach das Kontrollkästchen neben der Option „Benutzer angemeldet“ und klicken Sie dann auf die Schaltfläche „Speichern“.

Sie können nun Ihre Website besuchen, um das Menü für angemeldete Benutzer in Aktion zu sehen. Sie können sich auch aus Ihrem WordPress-Admin abmelden, um das Navigationsmenü anzuzeigen, das allen anderen Benutzern angezeigt wird.

Unterschiedliches Menü für eingeloggte Benutzer

Methode 2. Anmelden-Menü in WordPress manuell mit Code auswählen

Diese Methode erfordert, dass Sie Code zu Ihrer WordPress-Website hinzufügen. Wenn Sie dies noch nie getan haben, werfen Sie einen Blick auf unseren Leitfaden zum Kopieren und Einfügen von Code-Snippets in WordPress.

Im Allgemeinen werden Sie in Blogs erfahren, dass Sie einen Code-Schnipsel zur functions.php-Datei Ihres Themes oder zu einem standortspezifischen Plugin hinzufügen müssen. Wir empfehlen diese Methode jedoch nicht, da sie potenziell Probleme mit Ihrer Website verursachen kann.

Stattdessen können Sie das WPCode-Plugin verwenden.

WPCode ermöglicht es Ihnen, benutzerdefinierte Code-Snippets zu Ihrer Website hinzuzufügen, ohne die Theme-Dateien direkt zu bearbeiten. Es hilft auch bei der Verwaltung dieser Snippets und stellt sicher, dass sie sicher ausgeführt werden, wodurch das Risiko, Ihre Website zu beschädigen, minimiert wird.

ℹ️ Hinweis: Über unsere Partner-Marken hinweg war WPCode unser bevorzugtes Werkzeug zum Hinzufügen benutzerdefinierter Snippets zur Erweiterung der Funktionalität jeder Website. Wenn Sie mehr erfahren möchten, können Sie unseren umfassenden WPCode-Testbericht lesen.

Um zu beginnen, installieren wir das WPCode-Plugin. Sie können die kostenlose Version von WPCode verwenden, da sie alle Funktionen enthält, die Sie benötigen, um unterschiedliche Menüs für angemeldete Benutzer anzuzeigen.

Wenn Sie jedoch Zugriff auf erweiterte Funktionen wie die Code-Revisionshistorie und die Planung des Live-Schaltens von Snippets wünschen, sollten Sie ein Upgrade auf WPCode Pro in Betracht ziehen.

Nach der Installation navigieren Sie zu Code-Snippets » + Snippets hinzufügen.

Schaltfläche „Snippet hinzufügen“ in WPCode

Dies öffnet die Code-Snippet-Galerie von WPCode.

Von hier aus können Sie auf die Schaltfläche „+ Benutzerdefiniertes Snippet hinzufügen“ klicken.

Schaltfläche "Benutzerdefiniertes Snippet hinzufügen" in WPCode

Sie gelangen dann zum Texteditor von WPCode.

Der nächste Schritt ist, Ihrem Code-Snippet einen Titel hinzuzufügen und aus dem Dropdown-Menü „Code-Typ“ die Option „HTML-Snippet“ auszuwählen.

Snippet-Titel hinzufügen und Code-Typ in WPCode auswählen

Sobald Sie fertig sind, kopieren Sie einfach den folgenden Code und fügen Sie ihn in das Feld „Code-Vorschau“ ein:

function my_wp_nav_menu_args( $args = '' ) {
if( is_user_logged_in() ) {
// Logged in menu to display
$args['menu'] = 43;

} else {
// Non-logged-in menu to display
$args['menu'] = 35;
}
return $args;
}
add_filter( 'wp_nav_menu_args', 'my_wp_nav_menu_args' );

So könnte es in Ihrem WPCode-Editor aussehen:

Der benutzerdefinierte HTML-Snippet im Code-Vorschau von WPCode

Stellen Sie sicher, dass Sie 43 und 35 durch die IDs der zuvor erstellten Navigationsmenüs ersetzen.

Sie können die ID eines Navigationsmenüs finden, indem Sie es auf der Seite „Menüs“ auswählen. Die Menü-ID-Nummer wird in der Adressleiste Ihres Browsers angezeigt.

Navigationsmenü-ID finden

Sobald Sie sichergestellt haben, dass alle Details korrekt sind, klicken Sie auf die blaue Schaltfläche „Snippet speichern“.

Und das ist alles!

Bonus-Tipp: Weitere Anwendungsfälle für bedingte Logik in WordPress-Menüs

Wenn es um Navigation geht, kann bedingte Logik mehr tun, als nur verschiedenen Benutzern, die angemeldet sind, unterschiedliche Menüs anzuzeigen. Hier sind ein paar schnelle Beispiele:

  • Unterschiedliche Menüs basierend auf Benutzerrolle anzeigen: Sie können Administratoren und Mitarbeitern unterschiedliche Menüs anzeigen. Zeigen Sie beispielsweise nur für Administratoren bestimmte Optionen wie Website-Einstellungen oder Benutzerverwaltung an, während Sie Mitarbeitern oder anderen Benutzerrollen allgemeine Navigationslinks anbieten.
  • Unterschiedliche Menüs auf verschiedenen Seiten anzeigen: Möchten Sie ein einzigartiges Menü auf Ihrer Blog-Seite oder Ihren Produktseiten? Bedingungslogik ermöglicht es Ihnen, für jede Seite spezifische Menüs zu erstellen, sodass die Navigation auf den Inhalt zugeschnitten ist.
  • Navigation auf Landing Pages ausblenden: Landing Pages funktionieren am besten ohne Ablenkungen. Verwenden Sie bedingte Logik, um Ihr Navigationsmenü auszublenden und die Aufmerksamkeit auf Ihren Call-to-Action zu lenken, wie z. B. ein Anmeldeformular oder ein Produktangebot.

Um mehr zu erfahren, können Sie unseren Leitfaden zur bedingten Logik in WordPress-Menüs konsultieren.

FAQs: Unterschiedliche Menüs für eingeloggte Benutzer in WordPress anzeigen

Haben Sie noch Fragen zum Anzeigen unterschiedlicher Menüs für Benutzer in WordPress? Hier sind einige schnelle Antworten, die Ihnen helfen sollen:

Kann ich unterschiedliche Menüs basierend auf Benutzerrollen anzeigen?

Absolut. Sie können Administratoren, Redakteuren oder jeder anderen benutzerdefinierten Benutzerrolle auf Ihrer Website eindeutige Menüs anzeigen. Das Plugin "Conditional Menus" bietet eine einfache Option, dies einzurichten, was perfekt für die Anpassung der Navigation für Ihre Teammitglieder ist.

Ist es besser, ein Plugin zu verwenden oder Code manuell hinzuzufügen?

Für die meisten Benutzer empfehlen wir die Verwendung eines Plugins wie Conditional Menus oder WPCode. Diese Tools erleichtern die Anzeige unterschiedlicher Menüs, ohne Ihre Theme-Dateien zu berühren.

WPCode ist besonders hilfreich, wenn Sie die Flexibilität der Code-Nutzung bevorzugen. Es ermöglicht Ihnen, sicher benutzerdefinierte PHP-Snippets hinzuzufügen und sie von Ihrem WordPress-Dashboard aus zu verwalten – Sie müssen functions.php nicht direkt bearbeiten.

Manuelles Codieren ist immer noch eine gute Option für Entwickler, aber für alle anderen ist ein Plugin die sicherere und anfängerfreundlichere Wahl.

Kann ich das Navigationsmenü auf bestimmten Seiten ausblenden?

Ja, Sie können dieselbe bedingte Logik verwenden, um Ihr Navigationsmenü auf bestimmten Seiten auszublenden. Dies ist eine beliebte Strategie für Landing Pages, da sie Ablenkungen reduziert und den Besucher auf Ihren Call-to-Action konzentriert.

Zusätzliche Ressourcen: WordPress-Benutzerrollen und Website-Navigation

Wir hoffen, dieser Artikel hat dir geholfen zu lernen, wie du angemeldeten Benutzern in WordPress einfach unterschiedliche Navigationsmenüs anzeigen kannst. Als Nächstes möchtest du vielleicht auch unsere Anleitungen zu folgenden Themen sehen:

Wenn Ihnen dieser Artikel gefallen hat, abonnieren Sie bitte unseren YouTube-Kanal für WordPress-Video-Tutorials. Sie finden uns auch auf Twitter und Facebook.

Offenlegung: Unsere Inhalte werden von unseren Lesern unterstützt. Das bedeutet, wenn Sie auf einige unserer Links klicken, können wir eine Provision verdienen. Sehen Sie wie WPBeginner finanziert wird, warum das wichtig ist und wie Sie uns unterstützen können. Hier ist unser Redaktionsprozess.

Das ultimative WordPress-Toolkit

Erhalten Sie KOSTENLOSEN Zugang zu unserem Toolkit – eine Sammlung von WordPress-bezogenen Produkten und Ressourcen, die jeder Profi haben sollte!

Leserinteraktionen

101 CommentsLeave a Reply

  1. Zuerst dachte ich an ein Plugin. Muss aufhören, so zu denken.
    Dann sah ich deinen Beitrag und war überzeugt.
    Danke für das Posten, du hast mir sehr geholfen.

  2. Hallo,

    Das funktioniert total!
    Aber es ändert auch mein Footer-Menü.. gibt es eine Möglichkeit, dass mein Footer-Menü gleich bleibt?

  3. Ich habe also 2 Menüs. Eines für die Öffentlichkeit und ein anderes, das ich gerne sehen würde, wenn Mitarbeiter angemeldet sind. Das Mitarbeitermenü würde das Hauptmenü nur ersetzen, wenn ein Mitarbeiter angemeldet ist.

    Hier ist, was ich derzeit in meiner functions.php-Datei verwende

    // Setzt die Rolle als Body-Klasse

    function add_role_to_body( $classes ) {

    $user = wp_get_current_user();

    $user_roles = $user->roles; foreach( $user_roles as $role ) { $classes[] = ‘role-‘ . $role; }

    return $classes;

    }

    add_filter( ‘body_class’, ‘add_role_to_body’ );

    ***Hier ist, was ich für CSS hinzugefügt habe***

    /* Zuerst die Menüpunkte für Nicht-„Mitarbeiter“-Benutzer ausblenden */
    #top-menu li.menu-for-employee { display: none; }

    /* Zeige die Menüpunkte für den "Mitarbeiter"-Benutzer an */
    .role-employee #top-menu li.menu-for-employee { display: initial; }

    Wenn ich mich als Mitarbeiter anmelde, werden beide Menüs angezeigt.

    Danke im Voraus.

  4. Es funktioniert bei mir nicht. Es wird das Standardmenü angezeigt, nachdem ich diesen Code hinzugefügt habe, sogar mein primäres Menü ist weg.

  5. Hallo Leute,

    Ein schönes Tutorial, aber ich habe mich gefragt, ob man den gleichen Ansatz verwenden könnte, um ein responsives Menü bei einer bestimmten Bildschirmgröße zu ersetzen?

    Ich habe zwei Menüs, hätte aber lieber nur ein responsives Menü bei 768 Pixeln, indem ich das Menü durch ein anderes ersetze.

    Danke

  6. Tolle Arbeit mit Ihren Anleitungen. Ich baue meine erste WordPress-Website und finde Ihre Seite unglaublich hilfreich, um mich zu leiten, danke.

    Ich wollte wirklich unterschiedliche Menüs für angemeldete Benutzer (wie „Profil bearbeiten“) und für nicht angemeldete Benutzer anzeigen, und das hat mich hierher gebracht. Der von Ihnen geteilte Code funktioniert bei mir einwandfrei. Ich habe jetzt zwei Menüs, die gut angezeigt werden. Der letzte Teil des Codes, der Add-Filter-String, macht mir jedoch ein wenig zu schaffen. Jetzt wird ein weiteres Menü unter dem Sidebar-Widget angezeigt. Das „eingeloggte“ Menü. Ich benutze das Sydney-Theme und habe vergeblich versucht, dieses unnötige Menü zu entfernen. Haben Sie eine Idee, wie ich es nicht anzeigen lassen kann?

  7. Hallo, können Sie mir bitte helfen? Ich habe noch ein Problem, bitte? Ich muss ein Menü für alle ausblenden und nur den Händlern erlauben, es zu sehen, was muss ich tun, bitte? Welchen spezifischen Code muss ich verwenden, bitte?

  8. Wenn Sie functions.php so ändern, wird sie dann nicht gelöscht, wenn Sie Ihre nächste WP-Version aktualisieren?

  9. Setzt die Funktion auch das sekundäre Menü? Ich möchte nur das primäre Menü setzen. Wie mache ich das?

  10. Diese obige Funktion setzt das sekundäre Menü. Alles, was ich einstellen möchte, ist das Hauptmenü?
    Wie mache ich das?

  11. Hallo,

    Vielen Dank für diese Lösung, ich habe sie angewendet und sie funktioniert perfekt und hat mir die Installation eines weiteren Plugins erspart.

  12. Dies ist der Code zum Ersetzen des vorhandenen Menüs durch das Menü für angemeldete Benutzer, indem die Position "top-menu" und das Menü "loggedin" hinzugefügt werden, kein "else"-Statement erforderlich.

    add_filter( ‘wp_nav_menu_args’, function ( $args )
    { if( is_user_logged_in() && $args[‘theme_location’] === ‘top-menu’ ) { $args[‘menu’] = ‘loggedin’; } return $args; });

  13. ———————————————————–
    function my_wp_nav_menu_args( $args = "" ) {

    if( ist_benutzer_eingeloggt() ) { $args['menu'] = 'eingeloggt'; } else { $args['menu'] = 'ausgeloggt'; } return $args; } add_filter( 'wp_nav_menu_args', 'my_wp_nav_menu_args' ); ———————————————————–

    Wie bekomme ich es jetzt zum Laufen mit

    —————————————————

    ———————————————————————————————————————-

    Bitte um Rat

  14. Wenn ich eine Seite für nicht angemeldete Benutzer aus einem einzelnen Menü ausblenden möchte, was muss ich tun?

    • Sie können Seiten sperren, um sie für abgemeldete Benutzer auszublenden. Es gibt mehrere Plugins, die dies sehr einfach machen. Users Ultra fällt mir ein.

  15. Alles hat perfekt funktioniert.

    Ich habe jedoch immer noch das Problem eines wiederholten Hauptmenüs im Bereich der sekundären Navigation, das ich nicht entfernen kann (ich habe kein sekundäres Menü eingerichtet).

    • Ich habe genau das gleiche Problem. Die Änderung spiegelt sich unerwartet im sekundären Menüstandort wider und ich habe auch kein sekundäres Menü eingerichtet. :/ Bitte raten Sie, wie ich damit umgehen soll.

      Danke im Voraus.

  16. ACHTUNG!!!

    Die meisten von uns verwenden Themes.
    Gehen Sie also zuerst zur functions.php Ihres Themes.
    Suchen Sie mit Navigation als Stichwort.

    Im Falle des Shopkeeper-Themes..

    ================================================================== register_nav_menus( array( 'top-bar-navigation' => __( 'Top Bar Navigation', 'shopkeeper' ), 'main-navigation' => __( 'Main Navigation', 'shopkeeper' ), 'footer-navigation' => __( 'Footer Navigation', 'shopkeeper' ), ===================================================================

    So siehst du aus.. wähle also dasjenige aus, das primär ist. In meinem Fall ist es „Top Bar Navigation“, daher habe ich „top-bar-navigation“ verwendet.

    Ich habe den folgenden Code verwendet und er hat wie am Schnürchen funktioniert!!!

    Dies ist meine Art, dem Autor zu danken.

    Guten Tag !!

  17. Hier ist, was für mich mit WP funktioniert hat. Ich habe dies verwendet, um ein spezifisches primäres Menü für angemeldete Buddypress-Benutzer zu erstellen. Es wird mein Fußzeilenmenü ODER mein Social-Media-Menü für alle Besucher NICHT beeinflussen, sodass jeder die gleichen sekundären Menüs sieht, unabhängig davon, ob er angemeldet ist oder nicht. Dies basiert auf allen Kommentaren oben (HT an Fransiska!).

    Habe Folgendes zu meiner functions.php-Datei meines Child-Themes hinzugefügt:

    // HAUPTMENÜ =NUR= ÄNDERN, WENN MITGLIED ANGEMELDET IST

    function my_wp_nav_menu_args( $args = "" ) { if ($args['theme_location'] == 'primary') { if( is_user_logged_in()) { $args['menu'] = 'logged-in'; }else{ $args['menu'] = 'logged-out'; } } return $args; }

    add_filter( ‘wp_nav_menu_args’, ‘my_wp_nav_menu_args’ );

  18. Hallo,
    Ich habe diesen Code (wahrscheinlich falsch) in meine functions.php innerhalb meines Themes im WordPress-Editor eingefügt und jetzt habe ich einen ständigen 500er-Serverfehler. Selbst nachdem ich den Code entfernt habe.

    Davor habe ich versucht, ein standortspezifisches Plugin zu erstellen, aber das hat nicht funktioniert. Könnten Sie mir bitte sagen, ob der Snippet eine öffnende und schließende Klammer benötigt?
    Wenn ja, wie mache ich das?
    Mein Hoster kann mir jetzt nicht helfen und sie verlangen, dass ich einen Programmierer bezahle, der mir für 50 € pro Stunde hilft. Bitte helfen Sie mir. Es ist dringend.
    Ich bin immer noch in WordPress eingeloggt, aber was auch immer ich anklicke, ich bekomme den 500-Fehler mit dieser spezifischen Fehlermeldung.
    PHP Parse error: syntax error, unexpected ‘}’ in line 1194.
    Das liegt daran, dass ich den Snippet nach dem gesamten Text in der functions.php-Datei eingefügt habe.
    Ich habe den Snippet dann entfernt, um zu sehen, ob das das Problem behebt, über den Editor und FTP, und ich bekomme immer noch den Fehler.
    Ich freue mich auf Ihre Antwort.
    Mit freundlichen Grüßen

    • Es kommt darauf an, wo Sie den Code hinzufügen. Wenn sich davor ein schließendes PHP-Tag befindet, müssen Sie ein PHP-Start-Tag wie <?php hinzufügen.

      Wenn dieser Code das Letzte in der Funktionen-Datei ist, müssen Sie kein schließendes Tag hinzufügen.

      Admin

  19. Wenn Sie mehrere Menüpositionen haben und für jede Position unterschiedliche Menüs anwenden möchten, können Sie den folgenden Code verwenden:

    function my_wp_nav_menu_args( $args = ” ) {

    // Primärer Menüstandort
    if( ‘primary-main’ == $args[‘theme_location’] ) {

    if( is_user_logged_in() ) { $args[‘menu’] = ‘Primary-Logged-In’; } else { $args[‘menu’] = ‘Primary-Logged-Out’; }

    return $args; }

    // Sekundärer Menüstandort
    if( ‘secondary-menu’ == $args[‘theme_location’] ) {

    if( is_user_logged_in() ) { $args[‘menu’] = ‘Secondary-Logged-In’; } else { $args[‘menu’] = ‘Secondary-Logged-Out’; }

    return $args;

    }

    }
    add_filter( ‘wp_nav_menu_args’, ‘my_wp_nav_menu_args’ );

    • Hallo Gaurang,
      Ich bin neugierig zu erfahren, warum du denkst, dass die Verwendung des Plugins besser ist, als das Coding der functions.php-Datei? Mir wurde vor einiger Zeit gesagt, ich solle darauf achten, wie viele Plugins tatsächlich für eine WordPress-Site verwendet werden, und der obige Code scheint einfach genug zu sein; abzüglich der Notwendigkeit, jedes Mal zu überwachen, wenn dein Theme aktualisiert wird...

      Danke,

  20. Großartig, wie kann ich es verwenden, um ein Menü für angemeldete Benutzer mit einer bestimmten Rolle anzuzeigen?

  21. Das ist super, habe es ausprobiert. Funktioniert. Aber ich würde auch gerne nach Rolle weiterleiten.
    Ist das einfach oder viel schwieriger?

  22. Danke. Arbeite zum ersten Mal mit Menüfunktionen.

    Erstellung des WTG Portal Manager Plugins, das es ermöglicht, ein Portal sehr schnell zu definieren. Jedes Portal hat sein eigenes Menü. Das Plugin macht die Beziehung zwischen Portal und Menü klarer und bietet weitere einzigartige Optionen.

  23. danke für die Hilfe.. aber was ist, wenn ich verschiedenen Benutzern verschiedene Beiträge auf meiner Website anzeigen möchte.. gibt es eine Möglichkeit, das mit Code zu machen??

  24. Unter Darstellung > Menüs müssen Sie einen Speicherort für Ihr Menü auswählen. Es scheint, dass es auf Ihrer Website zwei Bereiche gibt, in denen Sie Menüs hinzufügen können. Sie müssen also zwei verschiedene Menüs erstellen und ihnen dann einen Speicherort zuweisen.

    • Wie würde der überarbeitete Code dafür aussehen, wenn es eine Unterscheidung zwischen 'Primary' und 'Top' gäbe?
      $args[‘primary-menu’] = ‘logged-in’;
      $args[‘top-menu’] = ‘logged-in’;

      else

      $args['primary-menu'] = 'logged-out';
      $args['top-menu'] = 'logged-out';

      ?

    • Wordpress erlaubt mir nicht, 2 Menüs in meiner „Top-Header“-Position zu platzieren. Der von Ihnen bereitgestellte Code funktioniert, aber er hat ALLE meine Menüs auf die für angemeldete oder abgemeldete Benutzer geändert und zeigt mein normales Navigationsmenü nicht an.

  25. Ich habe ein Top-Menü sowie ein Seitenmenü (unter dem Logo). Wie würde ich den Code ändern, um nur dieses Top-Menü zu wechseln? Im Moment ändern sich ALLE meine Menüs.

  26. Danke dafür.

    Auf der Startseite werden Menünamen, die ein Untermenü (ein Dropdown-Menü) haben, nicht als Dropdown angezeigt. Wenn ich zu einer anderen Seite als meiner Startseite gehe, ist das kein Problem und alle Menüpunkte werden angezeigt.

    Dies ist der Fall auf der Homepage sowohl für angemeldete als auch für abgemeldete Benutzer. Irgendwelche Ideen, wie das behoben werden kann? Danke.

    http://www.viridianmgt.com/wordpress

  27. Nur die Änderung eines bestimmten Menüs kann durch Ändern von $args[‘menu’] = ‘logged-in’; in $args[‘secondary-menu’] = ‘logged-in’; erreicht werden. Das sollte funktionieren!

    • Dieser Code funktioniert nicht. Ich habe ein 'primary-menu' und ein 'secondary-menu' registriert und versuche, die bereitgestellte Funktion mit Ihrer Änderung der Argumente zu verwenden, aber es ändern sich keine Menüs.

      Ich habe das mit diesem Code behoben:

      function my_wp_nav_menu_args( $args = ” ) { if ($args[‘theme_location’] == ‘secondary-menu’) { if( is_user_logged_in()) { $args[‘menu’] = ‘logged-in’; }else{ $args[‘menu’] = ‘logged-out’; } }else{ $args[‘menu’] = ‘Principal’; } return $args; }

      add_filter( ‘wp_nav_menu_args’, ‘my_wp_nav_menu_args’ );

      HINWEIS: ‘ Principal ist der Name des primären statischen Menüs.

      • So nah dran, sowohl mein Footer als auch meine Hauptmenüs ändern sich. Ich versuche nur, mein Footer-Menü zu ändern. Ich habe so viele Variationen dieses Codes ausprobiert, aber ohne Erfolg. Irgendwelche Lösungsansätze?

        Als ich mein Theme mit Firebug inspizierte, sagte es, mein Footer sei „id=footer-nav“. Sollte ich diesen Namen anstelle von „secondary-menu“ verwenden?

        Vielen Dank

  28. Hurra! Endlich gefunden, es ist mir nie in den Sinn gekommen, dass diese einfache Funktion meine Arbeit so erleichtern würde.
    Danke Leute!

  29. Wenn ich versuche, den Code in die functions.php-Datei einzugeben, erhalte ich folgende Fehlermeldung:

    Parse error: syntax error, unexpected ’03’ (T_LNUMBER) in /home/grantkessler/public_html/wp-content/themes/GameNews/functions.php on line 201

  30. Vielen Dank für das Teilen des Codes, aber er fügt dieses Menü wirklich in allen Bereichen hinzu! Gibt es eine Möglichkeit, es nur in einem bestimmten Menü anzuzeigen?

  31. Ich habe ein standortspezifisches Plugin erstellt und die Menüs funktionieren einwandfrei, aber mein Fußzeilenmenü wurde ebenfalls geändert. Es zeigt nicht das ausgewählte Menü, sondern das für angemeldete oder abgemeldete Benutzer.

  32. Hallo, wenn ich versuche, den Code einzufügen, ruiniert er meine Seite komplett und gibt die Fehlermeldung aus:

    function my_wp_nav_menu_args( $args = ” ) { if( is_user_logged_in() ) { $args[‘menu’] = ‘eingeloggt’; } else { $args[‘menu’] = ‘ausgeloggt’; } return $args; } add_filter( ‘wp_nav_menu_args’, ‘my_wp_nav_menu_args’ );
    Warnung: Kann Header-Informationen nicht ändern – Header wurden bereits gesendet von (Ausgabe gestartet in /homepages/5/d156331781/htdocs/reviewthegame/wp-content/themes/Made-Theme/made/functions.php:12) in /homepages/5/d156331781/htdocs/reviewthegame/wp-includes/pluggable.php on line 899

  33. Gibt es eine Möglichkeit, dies nur auf ein bestimmtes Menü anzuwenden?
    Ich habe dies versucht:
    if( $args->theme_location == ‘primary-menu’ ) {
    //Code hier
    }
    aber es funktioniert nicht. Irgendwelche Ideen, wie man das erreichen kann?

    • Dies ist, was ich getan habe, um das Problem mit zwei Menüs zu überwinden.
      Ich habe diese Funktion entfernt und diesen Code in die header.php eingefügt
      wo ich mein Menü aufgerufen habe.

      false,
      ‘menu_id’ => ‘nav’,
      ‘menu’ => ‘Registriert’,
      ‘items_wrap’ => ‘%3$s’)
      );
      }
      else
      {
      wp_nav_menu( array(‘container’ => false,
      ‘theme_location’ => ‘primary’,
      ‘menu_id’ => ‘nav’,
      ‘items_wrap’ => ‘%3$s’,
      ) );
      }?>

    • Verwenden

      if ($args[‘theme_location’] == ‘primary’)

      stattdessen und es wird funktionieren

      • Fransiska, können Sie Ihren Vorschlag weiter erläutern? Ich habe mehrere Untermenüs, die ich in Seitenleisten einfüge, und die Lösung auf dieser Seite macht all diese kurzen Menüs jetzt zu vollen Menüs mit all den Namen des primären Menüs, keines meiner verschiedenen benutzerdefinierten Menüs. Ihr Vorschlag klingt, als könnten wir diesen Trick nur auf die primäre Menüposition anwenden, nicht auf die Seitenleisten. Macht das Sinn? Können Sie den vollständigen Code bereitstellen? Ich habe kein Glück beim Raten, wie er zusammenpasst.

        joseph
        25. Okt. 2013 um 1:16 Uhr

        Gibt es eine Möglichkeit, dies nur auf ein bestimmtes Menü anzuwenden?
        Ich habe dies versucht:
        if( $args->theme_location == ‘primary-menu’ ) {
        //Code hier
        }
        aber es funktioniert nicht. Irgendwelche Ideen, wie man das erreichen kann?

        Fransiska
        31. Januar 2014 um 2:53 Uhr

        Verwenden

        if ($args[‘theme_location’] == ‘primary’)

        stattdessen und es wird funktionieren

  34. Toller Tipp, das kam genau zum richtigen Zeitpunkt in meiner Website-Entwicklung.

    Funktioniert super! Ich denke, ich werde das erweitern, um verschiedene Menüs für verschiedene Benutzerdaten anzuzeigen.

    Danke fürs Teilen!

  35. Hallo, danke dafür, sehr hilfreich. Ich bin mir aber immer noch nicht sicher, wo ich den Code einfügen soll?
    (Nachdem Sie die Menüs erstellt haben, fügen Sie diesen Code in die functions.php-Datei Ihres Themes oder ein standortspezifisches Plugin ein) – wo ist die functions.php-Datei?
    Viele Grüße

    • Gehen Sie zu Darstellung » Editor, Sie sehen die functions.php-Datei in der Liste der Dateien auf Ihrer rechten Seite. Wenn Sie jedoch keine functions.php-Datei dort sehen, bedeutet dies, dass Sie ein Theme-Framework oder ein Child-Theme verwenden. In diesem Fall müssen Sie ein sitespezifisches Plugin für Ihre Website erstellen und diesen Code in dieses Plugin einfügen. Sehen Sie sich unseren Leitfaden unter sitespezifisches Plugin an.

      Admin

Hinterlasse eine Antwort

Vielen Dank, dass Sie einen Kommentar hinterlassen. Bitte beachten Sie, dass alle Kommentare gemäß unserer Kommentarrichtlinie moderiert werden und Ihre E-Mail-Adresse NICHT veröffentlicht wird. Bitte verwenden Sie KEINE Schlüsselwörter im Namensfeld. Führen wir ein persönliches und bedeutungsvolles Gespräch.