Pålitliga WordPress-handledningar, när du behöver dem som mest.
Nybörjarguide till WordPress
WPB Cup
25 miljoner+
Webbplatser som använder våra plugins
16+
År av WordPress-erfarenhet
3000+
WordPress-handledningar
av experter

Hur du visar olika menyer för inloggade användare i WordPress

Har du någonsin märkt hur förvirrande det kan vara för dina WordPress-webbplatsbesökare när de är inloggade men fortfarande ser 'Logga in' eller 'Registrera' knappar överallt? Eller kanske dina medlemmar kämpar för att hitta sitt konto-dashboard eftersom det är begravt i menyn.

Dessa små frustrationer kan få även dina mest lojala användare att känna sig som utomstående på din egen webbplats.

Och en personlig meny kan göra hela skillnaden. Att visa inloggade användare alternativ som "Mitt konto" eller "Logga ut" istället för generiska länkar får din webbplats att kännas mer välkomnande och professionell.

De goda nyheterna? Att skapa dynamiska menyer i WordPress är enklare än du kanske tror.

I den här guiden visar vi dig två enkla metoder för att visa olika menyer för inloggade användare, oavsett din kunskapsnivå. 💡

Visa olika navigeringsmenyer för inloggade och utloggade användare i WordPress

Varför visa olika menyer för inloggade användare i WordPress?

Att ändra olika delar av din WordPress-webbplats baserat på dina besökare och deras aktivitet gör att din webbplats känns personlig för varje användare.

Detta personliga innehåll hjälper dig att förbättra användarupplevelsen på din WordPress-webbplats.

Nu, om du driver en webbplats där användare inte behöver registrera sig eller logga in, kan du förmodligen använda samma navigeringsmenyer över hela din webbplats. Däremot kan andra webbplatser ha stor nytta av att visa anpassade menyer för inloggade användare.

Till exempel kan webbplatser som en onlinebutik, en online-lärplattform eller en WordPress-medlemskapswebbplats-community alla dra nytta av personliga navigeringsmenyer.

En personlig navigeringsmeny för inloggade användare hjälper dem att lättare hitta saker de registrerat sig för.

Till exempel kan en användare i en onlinebutik hantera sitt konto, eller en medlem i en betald community kan enkelt förnya sitt abonnemang eller se de exklusiva onlinekurser de har köpt.

Annan meny för inloggade användare

Som standard låter WordPress dig skapa så många navigeringsmenyer som du vill. Du kan dock bara välja att visa en meny på en viss plats i ditt WordPress-tema.

Innan du ställer in menyer för inloggade användare måste du först skapa två separata navigeringsmenyer. En meny kommer att vara för inloggade användare och den andra för utloggade användare. Låt oss börja.

⚠️ Bara en snabb notering! Metoderna vi delar är utformade för personer som använder WordPress klassiska teman. Om du använder ett blocktema med Full Site Editing (FSE) funktioner från WordPress 5.8 och framåt, kanske den här metoden inte fungerar. 

Skapa menyer för inloggade och icke-inloggade användare i WordPress

För att skapa separata menyer för de två typerna av användare vill du gå till sidan Utseende » Menyer i WordPress-instrumentpanelen.

Om du redan har en navigeringsmeny som du använder på din webbplats för alla användare, kan detta vara din standardmeny.

Huvudmeny

Därefter kan du klicka på länken 'skapa en ny meny' för att skapa en ny anpassad meny för dina inloggade användare.

Här kan du lägga till menyalternativ som du vill visa för registrerade eller inloggade användare. Du kanske till exempel vill lägga till en utloggningslänk i din meny.

På vänster sida av skärmen kan du se en lista över dina webbplatsens sidor. Markera helt enkelt rutan bredvid den sida du vill lägga till i din meny och klicka på knappen 'Add to Menu'.

Inloggad meny

Du kan också dra och släppa menyalternativen på höger sida av skärmen för att ordna om dem.

Längre ner på sidan kan du välja en plats att visa din meny. Men du behöver inte tilldela en plats till den här menyn nu. Det gör vi senare i artikeln.

Glöm inte att klicka på knappen 'Spara meny' för att spara dina ändringar.

För mer information om att skapa menyer, ta en titt på vår nybörjarguide till WordPress navigeringsmenyer.

Nu är du redo att visa olika menyer för inloggade användare. Här är en snabb översikt över alla metoder vi kommer att gå igenom i den här guiden:

Redo att skapa en mer skräddarsydd upplevelse? Låt oss dyka in! 🌟

Metod 1. Visa olika menyer för inloggade användare i WordPress med hjälp av ett plugin

Det enklaste sättet att visa olika menyer för inloggade användare är att använda Conditional Menus plugin. Så, låt oss installera och aktivera det först.

För mer information kan du se vår steg-för-steg-guide om hur man installerar ett WordPress-plugin.

Efter aktivering behöver du navigera till Utseende » Menyer från din WordPress-instrumentpanel. Byt sedan till fliken 'Hantera platser'.

Här ser du listan över tillgängliga menyplatser som definierats i ditt WordPress-tema och de menyer som för närvarande visas.

Till exempel visar vår 'Primär meny'-plats för närvarande en 'Huvudmeny'.

Hantera menyplatser

Nu måste vi tala om för pluginet att visa en annan meny när ett visst villkor är uppfyllt.

För att göra det, klickar vi på länken '+ Villkorlig meny'. Sedan kan du välja den navigeringsmeny du vill visa för inloggade användare från rullgardinsmenyn.

Välj meny för inloggade

Därefter vill du klicka på länken ‘+ Villkor’.

Detta kommer att öppna ett popup-fönster där du ser en mängd villkor att välja mellan.

Välj inloggad användare som villkor

Markera helt enkelt rutan bredvid alternativet 'Användare inloggad' och klicka sedan på knappen 'Spara'.

Du kan nu besöka din webbplats för att se menyn för inloggade användare i praktiken. Du kan också logga ut från din WordPress-admin för att se navigeringsmenyn som visas för alla andra användare.

Annan meny för inloggade användare

Metod 2. Välj manuellt den inloggade menyn i WordPress med kod

Den här metoden kräver att du lägger till kod på din WordPress-webbplats. Om du inte har gjort det tidigare, ta en titt på vår guide om hur man kopierar och klistrar in kodsnuttar i WordPress.

Generellt sett kommer bloggar att berätta att du behöver lägga till ett kodavsnitt i ditt temas functions.php-fil eller ett webbplatsspecifikt plugin. Vi rekommenderar dock inte denna metod eftersom den potentiellt kan orsaka problem med din webbplats.

Istället kan du använda WPCode-pluginet.

WPCode låter dig lägga till anpassade kodavsnitt på din webbplats utan att redigera temats filer direkt. Det hjälper också till att hantera dessa avsnitt och säkerställer att de körs säkert, vilket minimerar risken för att din webbplats går sönder.

ℹ️ Notera: Hos våra partner varumärken har WPCode varit vårt verktyg för att lägga till anpassade kodavsnitt för att utöka varje webbplats funktionalitet. Om du är nyfiken på att lära dig mer kan du läsa vår omfattande WPCode-recension.

För att komma igång, låt oss installera WPCode-pluginet. Du kan använda WPCode gratisversion, eftersom den har alla funktioner du behöver för att visa olika menyer för inloggade användare.

Men om du vill ha tillgång till avancerade funktioner som kodgranskningshistorik och schemaläggning när kodavsnitt publiceras, överväg då att uppgradera till WPCode Pro.

När du har installerat vill du navigera till Kodavsnitt » + Lägg till kodavsnitt.

Lägg till kodavsnitts-knapp i WPCode

Detta öppnar WPCode:s galleri med kodavsnitt.

Härifrån kan du klicka på knappen ‘+ Lägg till anpassad kodsnutt’.

Lägg till anpassad kodsnutt-knapp i WPCode

Du kommer då till WPCode:s textredigerare.

Nästa steg är att lägga till en titel för ditt kodavsnitt och välja 'HTML snippet' från rullgardinsmenyn 'Code Type'.

Lägga till snippet-titel och välja kodtyp i WPCode

När du är klar, kopiera och klistra helt enkelt in följande kod i fältet 'Code Preview':

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' );

Så här kan det se ut i din WPCode-redigerare:

Anpassad HTML-kodavsnitt i WPCode's kodförhandsgranskning

Se till att du ersätter 43 och 35 med ID:n för de navigeringsmenyer du skapade tidigare.

Du kan hitta ID:t för en navigeringsmeny genom att välja den på sidan 'Menus'. Du kommer att se meny-ID-numret i din webbläsares adressfält.

Hitta navigeringsmeny-ID

När du har kontrollerat att alla detaljer är korrekta, klickar du på den blå knappen ‘Spara utdrag’.

Och det var allt!

Bonustips: Fler användningsfall för villkorsstyrd logik i WordPress-menyer

När det gäller navigering kan villkorsstyrd logik göra mer än att visa olika menyer för inloggade användare. Här är några snabba exempel:

  • Visa olika menyer baserat på användarroll: Du kan visa en annan meny för administratörer jämfört med medarbetare. Visa till exempel endast admin-alternativ som webbplatsinställningar eller användarhantering för administratörer, samtidigt som du erbjuder allmänna navigeringslänkar till medarbetare eller andra användarroller.
  • Visa olika menyer på olika sidor: Vill du ha en unik meny på din bloggsida eller produktsidor? Villkorlig logik låter dig skapa specifika menyer för varje, så att navigeringen skräddarsys efter innehållet.
  • Dölj navigering på landningssidor: Landningssidor fungerar bäst utan distraktioner. Använd villkorlig logik för att dölja din navigeringsmeny och fokusera uppmärksamheten på din call-to-action, som ett registreringsformulär eller ett produktbud.

För att lära dig mer kan du hänvisa till vår guide om hur man lägger till villkorsstyrd logik i menyer i WordPress.

Vanliga frågor: Visa olika menyer för inloggade användare i WordPress

Har du fortfarande frågor om att visa olika menyer för användare i WordPress? Här är några snabba svar som kan hjälpa dig:

Kan jag visa olika menyer baserat på användarroller?

Absolut. Du kan visa unika menyer för administratörer, redaktörer eller någon annan anpassad användarroll på din webbplats. Pluginet Conditional Menus erbjuder ett enkelt alternativ för att ställa in detta, vilket är perfekt för att skräddarsy navigering för dina teammedlemmar.

Är det bättre att använda ett plugin eller lägga till kod manuellt?

För de flesta användare rekommenderar vi att använda ett plugin som Conditional Menus eller WPCode. Dessa verktyg gör det enkelt att visa olika menyer utan att röra dina temafiler.

WPCode är särskilt användbart om du föredrar flexibiliteten med att använda kod. Det låter dig säkert lägga till anpassade PHP-kodavsnitt och hantera dem från din WordPress-instrumentpanel – du behöver inte redigera functions.php direkt.

Manuell kodning är fortfarande ett bra alternativ för utvecklare, men för alla andra är ett plugin det säkrare, mer nybörjarvänliga valet.

Kan jag dölja navigeringsmenyn på vissa sidor?

Ja, du kan använda samma villkorliga logik för att dölja din navigeringsmeny på specifika sidor. Detta är en populär strategi för landningssidor, eftersom den tar bort distraktioner och håller besökaren fokuserad på din uppmaning till handling.

Ytterligare resurser: WordPress användarroller och webbplatsnavigering

Vi hoppas att den här artikeln har hjälpt dig att lära dig hur du enkelt visar olika navigeringsmenyer för inloggade användare i WordPress. Därefter kanske du också vill se våra guider om:

Om du gillade den här artikeln, prenumerera då på vår YouTube-kanal för WordPress-videoguider. Du kan också hitta oss på Twitter och Facebook.

Upplysning: Vårt innehåll stöds av läsarna. Det innebär att om du klickar på några av våra länkar kan vi tjäna en provision. Se hur WPBeginner finansieras, varför det är viktigt och hur du kan stödja oss. Här är vår redaktionella process.

Det ultimata WordPress-verktyget

Få GRATIS tillgång till vår verktygslåda - en samling WordPress-relaterade produkter och resurser som alla proffs bör ha!

Läsarnas interaktioner

101 CommentsLeave a Reply

  1. Först tänkte jag på ett plugin. Måste sluta tänka så.
    Sedan såg jag ditt inlägg och var såld.
    Tack för att du postade detta, du hjälpte mig väldigt bra.

  2. Hej,

    Det här fungerar absolut!
    Men det ändrar även min sidfotsmeny.. finns det ett sätt där min sidfotsmeny förblir densamma?

  3. Så, jag har 2 menyer. En för allmänheten och en annan som jag vill att anställda ska se när de är inloggade. Medlemmenyn skulle ersätta huvudmenyn endast när en anställd är inloggad.

    Här är vad jag för närvarande använder i min functions.php-fil

    // Sätt rollen som en kroppsklass

    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’ );

    ***Här är vad jag lade till för CSS***

    /* Skjul först menyalternativen för icke-"anställda" användare */
    #top-menu li.menu-for-employee {
    display: none;
    }

    /* Visa menyalternativen för "anställd"-användaren */
    .role-employee #top-menu li.menu-for-employee { display: initial; }

    När jag loggar in som anställd visas båda menyerna.

    Tack på förhand.

  4. Det fungerar inte för mig. Den visar standardmenyn efter att jag har lagt till den här koden, till och med min primära meny är borta.

  5. Hej alla,

    En trevlig handledning men jag undrade om du kunde använda samma metod för att ersätta en responsiv meny vid en viss skärmstorlek?

    Jag har två menyer men skulle hellre vilja ha bara en responsiv meny vid 768 px genom att ersätta menyn med en annan.

    Tack

  6. Fantastiskt jobb med dina guider. Jag bygger min första WordPress-webbplats och jag tycker att din webbplats är otroligt hjälpsam för att guida mig, tack.

    Jag ville verkligen visa olika menyer för inloggade användare (som 'redigera profil') och för utloggade användare, och det ledde mig hit. Koden du delade fungerar bra för mig. Jag har nu två menyer som visas fint. Dock verkar den sista delen av koden, add filter-strängen, ställa till det lite för mig. Nu visas en annan meny under sidofältswidgeten. 'Inloggad'-menyn. Jag använder sydney-temat och har utan framgång försökt ta bort denna onödiga meny. Någon idé om hur jag kan få den att inte visas?

  7. Hej kan du hjälpa mig snälla? Jag har ett annat problem snälla? Jag behöver dölja en meny för alla och bara tillåta leverantörer att se, vad jag behöver göra snälla? vilken specifik kod behöver jag använda snälla?

  8. När du ändrar functions.php på det här sättet, skulle det inte raderas när du uppgraderar din WP nästa version?

  9. ställer funktionen in den sekundära menyn också? jag vill bara ställa in primära menyn. hur gör jag det

  10. denna ovanstående funktion ställer in sekundärmenyn, allt jag vill är att ställa in endast huvudmenyn?
    hur gör man det

  11. Hej,

    tack så mycket för den här lösningen, jag har tillämpat den och den fungerar perfekt och sparade mig från att installera ytterligare ett plugin.

  12. detta är koden för att ersätta befintlig meny med meny för inloggad användare genom att lägga till platsen top-menu och med menyn loggedin ingen annan else-sats behövs med detta

    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( 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' ); ———————————————————–

    Nu, hur får jag det att fungera med

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

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

    Vänligen ge råd

  14. Om jag vill dölja en sida från utloggade användare från en enda meny, vad ska jag göra?

    • Du kan låsa sidor för att dölja dem från utloggade användare. Det finns flera plugins som gör detta mycket enkelt. Users Ultra kommer till minne.

  15. Allt fungerade perfekt.

    Jag har dock fortfarande problemet med en upprepad primär meny i sektionen för sekundär navigeringsmeny som jag inte verkar kunna ta bort (jag har ingen sekundär meny inställd).

    • Jag har exakt samma problem. Ändringen återspeglas i den sekundära menyplatsen ur det blå och jag har inte heller någon sekundär meny inställd. :/ Vänligen ge råd om hur jag ska hantera det.

      Tack på förhand.

  16. LYSSNA!!!

    De flesta av oss använder teman.
    Så gå först till functions.php i ditt tema.
    Sök med navigation som nyckelord.

    Om Shopkeeper-temat..

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

    Så här ser du ut.. så välj den som är primär, i mitt fall är det "Top Bar Navigation" därav användes "top-bar-navigation"

    Jag använde följande kod och den fungerade som en charm!!!

    Detta är mitt sätt att tacka författaren.

    God dag !!

  17. Här är vad som fungerade för mig med WP. Jag använde detta för att skapa en specifik primär meny för inloggade Buddypress-användare. Det kommer INTE att påverka min sidfotsmeny ELLER sociala medier-meny för några besökare, så alla ser samma sekundära menyer oavsett om de är inloggade eller inte. Detta bygger på alla kommentarer ovan (HT till Fransiska!).

    Lade till följande i min Child Themes functions.php-fil:

    // ÄNDRA HOUMENYN =ENDAST= OM MEDLEM ÄR INLOGGAD

    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. Hej,
    Jag lade till den här koden (förmodligen felaktigt) i min functions.php inom mitt tema i wordpress-redigeraren och nu har jag en konstant 500 serverfel. Även efter att ha tagit bort koden.

    Innan detta försökte jag skapa ett platsspecifikt plugin men det fungerade inte. Kan du snälla berätta om kodsnutten kräver en öppnande och en stängande klammerparentes?
    Om så är fallet, hur gör jag det?
    Min värd kan inte hjälpa mig nu och de ber mig att betala en programmerare för att hjälpa mig för 50 euro per timme. Snälla hjälp mig. Det är brådskande.
    Jag är fortfarande inloggad i WordPress men vad jag än klickar på får jag 500-felet med detta specifika fel.
    PHP Parse error: syntax error, unexpected ‘}’ in line 1194.
    Detta beror på att jag klistrade in kodsnutten efter all text i functions.php-filen.
    Jag tog sedan bort kodsnutten för att se om det skulle lösa det, via redigeraren och FTP och jag får fortfarande felet.
    Jag ser fram emot att höra ditt svar.
    Vänliga hälsningar

    • Det beror på var du lägger till koden. Om det finns en avslutande PHP-tagg före den behöver du lägga till en PHP-starttagg som <?php

      Om den här koden är det sista i funktioner-filen behöver du inte lägga till en avslutande tagg.

      Admin

  19. Om du har flera menyplatser och vill använda olika menyer för varje plats kan du använda koden nedan:

    function my_wp_nav_menu_args( $args = ” ) {

    // Primär menyplats
    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är menyplats
    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’ );

  20. Det här var nästan för enkelt!
    Tack så mycket för den enkla artikeln.

    På så sätt behöver jag inte installera något plugin..

    • Hej Gaurang,
      Jag är nyfiken på varför du tycker att det är bättre att använda ett plugin än att koda filen functions.php? Jag fick för ett tag sedan rådet att vara försiktig med hur många plugins som faktiskt används för en WordPress-webbplats, och koden ovan verkar tillräckligt enkel; minus att behöva övervaka varje gång ditt tema uppdateras...

      Tack,

  21. Bra, hur kan jag använda det för att visa en meny för inloggade användare som har en viss roll?

  22. det här är fantastiskt, provade det. fungerar. men jag skulle också vilja omdirigera baserat på roll
    är det enkelt eller mycket svårare

  23. Tack. Arbetar med menyfunktioner för första gången.

    Skapar pluginet WTG Portal Manager som gör det möjligt att definiera en portal mycket snabbt. Varje portal har sin egen meny. Pluginet gör relationen mellan portal och meny tydligare plus erbjuder andra unika alternativ.

  24. tack för hjälpen.. men vad händer om jag vill visa olika användare olika inlägg på min sida.. finns det något sätt att göra det med kodning??

  25. Under Utseende > Menyer måste du välja en plats för din meny. Det verkar finnas två områden på din webbplats där du kan lägga till menyer. Så du behöver skapa två olika menyer och sedan tilldela en plats till dem.

    • vad skulle den reviderade koden för detta vara, om det fanns en åtskillnad mellan ‘Primär’ och ‘Topp’?
      $args[‘primary-menu’] = ‘logged-in’;
      $args[‘top-menu’] = ‘logged-in’;

      else

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

      ?

    • Wordpress låter mig inte lägga 2 menyer i min "top header"-plats. Koden du gav fungerar, men den ändrade ALLA mina menyer till inloggad eller utloggad, och visar inte min vanliga navigeringsmeny

  26. Jag har en toppmeny såväl som en sidomeny (under logotypen). Hur skulle jag ändra koden för att bara byta den där toppmenyn. Just nu ändras ALLA mina menyer.

  27. Tack för detta.

    På startsidan visar menyalternativ som har en undermeny (en rullgardinsmeny) inte rullgardinsmenyn. När jag går till någon annan sida som inte är min startsida är detta inget problem, och alla menyalternativ visas.

    Detta är fallet på startsidan för både inloggade och utloggade objekt. Någon idé om hur man fixar detta? Tack

    http://www.viridianmgt.com/wordpress

  28. Att bara ändra en viss meny kan uppnås genom att ändra $args[‘menu’] = ‘logged-in’; till $args[‘secondary-menu’] = ‘logged-in’; till exempel. Bör fungera!

    • Den koden fungerar inte. Jag har registrerat en 'primary-menu' och 'secondary-menu' och försöker använda funktionen som tillhandahålls med din ändring i args, ingen meny ändras.

      Jag fixade detta med den här koden:

      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’ );

      OBS: ‘Principal är namnet på den primära statiska menyn.

      • Så nära, både min sidfot och mina huvudmenyer ändras. Jag försöker bara ändra min sidfotsmeny. Jag har provat så många variationer av den här koden men inget resultat. Några lösningsförslag?

        När jag inspekterade mitt tema med Firebug stod det att min sidfot är “id=footer-nav”. Ska jag använda det namnet istället för “secondary-menu”?

        Många tack

  29. Hurra! Äntligen hittade jag det, det slog mig aldrig att den här enkla funktionen skulle underlätta mitt arbete så mycket.
    Tack allihopa!

  30. När jag försöker ange koden i filen functions.php får jag följande felmeddelande:

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

  31. Tack så mycket för att du delade med dig av koden, men den lägger verkligen till den här menyn i alla områden! Finns det ett sätt att visa den bara i en specifik meny?

  32. Jag skapade en webbplatsspecifik plugin och menyerna fungerar bra, men min sidomeny har också ändrats, den visar inte den jag valde utan den inloggade eller utloggade.

  33. Hej, när jag försöker lägga in koden så förstör den min webbplats helt och ger felmeddelandet:

    function my_wp_nav_menu_args( $args = ” ) { 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’ );
    Warning: Cannot modify header information – headers already sent by (output started at /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

  34. Finns det ett sätt att bara tillämpa detta på en specifik meny?
    Jag har provat detta:
    if( $args->theme_location == ‘primary-menu’ ) {
    //Kod här
    }
    men det fungerar inte. Några idéer om hur man uppnår detta?

    • Det här är vad jag har gjort för att lösa två menyproblem.
      Jag har tagit bort den funktionen och lagt den här koden i header.php
      där jag anropade min meny.

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

    • Använd

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

      istället och det kommer att fungera

      • Fransiska, kan du förklara ditt förslag ytterligare? Jag har flera undermenyer som jag lägger i sidofält, och lösningen på den här sidan gör nu alla dessa korta menyer till fulla menyer med alla namn från huvudmenyn, ingen av mina olika anpassade menyer. Ditt förslag låter som att vi kan tillämpa det här tricket bara på huvudmenypositionen, inte sidofälten. Ger det mening? Kan du tillhandahålla hela koden? Jag har inte haft någon lycka med att gissa hur det går ihop.

        joseph
        25 okt 2013 kl. 01:16

        Finns det ett sätt att bara tillämpa detta på en specifik meny?
        Jag har provat detta:
        if( $args->theme_location == ‘primary-menu’ ) {
        //Kod här
        }
        men det fungerar inte. Några idéer om hur man uppnår detta?

        Fransiska
        31 jan 2014 kl. 02:53

        Använd

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

        istället och det kommer att fungera

  35. Bra tips, det kom vid en perfekt tidpunkt i min webbplatsutveckling.

    Fungerar utmärkt! Jag tror att jag kommer att bygga vidare på detta för att visa olika menyer för olika användaruppgifter.

    Tack för att du delar med dig!

  36. Hej, tack för det, mycket hjälpsamt. dock är jag fortfarande inte säker på var jag ska lägga koden?
    (Efter att ha skapat menyerna, lägg till denna kod i ditt temas functions.php-fil eller en webbplatsspecifik plugin) – var finns functions.php-filen?
    hälsningar

    • Gå till Utseende » Redigerare du kommer att se filen functions.php i listan över filer till höger. Om du dock inte ser en fil functions.php där, betyder det att du använder ett temaramverk eller ett barn-tema. I så fall behöver du skapa ett webbplatsspecifikt plugin för din webbplats och lägga till den här koden i det pluginet. Se vår guide om webbplatsspecifikt plugin.

      Admin

Lämna ett svar

Tack för att du väljer att lämna en kommentar. Tänk på att alla kommentarer modereras enligt vår kommentarspolicy, och din e-postadress kommer INTE att publiceras. Använd INTE nyckelord i namn fältet. Låt oss ha en personlig och meningsfull konversation.