Ați observat vreodată cât de confuz poate fi pentru vizitatorii site-ului dvs. WordPress atunci când sunt conectați, dar văd în continuare butoane „Autentificare” sau „Înregistrare” peste tot? Sau poate membrii dvs. se luptă să găsească tabloul de bord al contului lor, deoarece este îngropat în meniu.
Aceste mici frustrări îi pot face chiar și pe cei mai loiali utilizatori să se simtă ca niște străini pe propriul site web.
Și un meniu personalizat poate face toată diferența. Afișarea utilizatorilor conectați cu opțiuni precum „Contul meu” sau „Deconectare” în locul linkurilor generice face ca site-ul dvs. să pară mai primitor și mai profesionist.
Vestea bună? Crearea de meniuri dinamice în WordPress este mai ușoară decât ați crede.
În acest ghid, îți vom arăta două metode simple pentru a afișa meniuri diferite utilizatorilor conectați, indiferent de nivelul tău de experiență. 💡

De ce să afișăm meniuri diferite utilizatorilor conectați în WordPress?
Modificarea diferitelor zone ale site-ului tău WordPress în funcție de vizitatorii tăi și de activitatea lor face ca site-ul tău să pară personalizat pentru fiecare utilizator.
Acest conținut personalizat vă ajută să îmbunătățiți experiența utilizatorului pe site-ul dvs. WordPress.
Acum, dacă aveți un site web unde utilizatorii nu trebuie să se înregistreze sau să se autentifice, probabil că puteți folosi aceleași meniuri de navigare pe întregul site. Cu toate acestea, alte site-uri web pot beneficia foarte mult de afișarea meniurilor personalizate pentru utilizatorii autentificați.
De exemplu, site-uri web precum un magazin online, o platformă de învățare online sau o comunitate de site de membri WordPress pot beneficia toate de meniuri de navigare personalizate.
Un meniu de navigare personalizat pentru utilizatorii conectați îi ajută să găsească mai ușor lucrurile pentru care s-au înscris.
De exemplu, un utilizator pe un magazin online își poate gestiona contul, sau un membru al unei comunități plătite își poate reînnoi cu ușurință abonamentul sau poate vizualiza cursurile online exclusive pe care le-au achiziționat.

În mod implicit, WordPress vă permite să creați oricâte meniuri de navigare doriți. Cu toate acestea, puteți alege să afișați un singur meniu într-o anumită locație în tema WordPress.
Înainte de a configura meniuri pentru utilizatorii conectați, va trebui mai întâi să creați două meniuri de navigare separate. Un meniu va fi pentru utilizatorii conectați, iar celălalt pentru utilizatorii deconectați. Să începem.
⚠️ Doar o notă rapidă! Metodele pe care le împărtășim sunt concepute pentru persoanele care folosesc teme clasice WordPress. Dacă folosiți o temă bazată pe blocuri cu funcționalități de Editare Completă a Site-ului (FSE) de la WordPress 5.8 încoace, această metodă s-ar putea să nu funcționeze.
Crearea meniurilor pentru utilizatorii conectați și deconectați în WordPress
Pentru a crea meniuri separate pentru cele două tipuri de utilizatori, va trebui să accesați pagina Aspect » Meniuri din tabloul de bord WordPress.
Dacă aveți deja un meniu de navigare pe care îl utilizați pe site-ul dvs. pentru toți utilizatorii, atunci acesta poate fi meniul dvs. implicit.

După aceea, puteți face clic pe linkul „creați un meniu nou” pentru a crea un nou meniu personalizat pentru utilizatorii dvs. conectați.
Aici, adăugați elementele de meniu pe care doriți să le afișați utilizatorilor înregistrați sau conectați. De exemplu, ați putea dori să adăugați un link de deconectare la meniul dvs..
În partea stângă a ecranului, puteți vedea o listă a paginilor site-ului dvs. web. Pur și simplu bifați căsuța de lângă orice pagină pe care doriți să o adăugați la meniul dvs. și faceți clic pe butonul „Adăugare la meniu”.

De asemenea, poți trage și plasa elementele meniului pe partea dreaptă a ecranului pentru a le rearanja.
Mai jos pe pagină, puteți alege o locație pentru a afișa meniul dvs. Dar nu este necesar să atribuiți o locație acestui meniu acum. Vom face acest lucru mai târziu în articol.
Nu uitați să faceți clic pe butonul „Salvare meniu” pentru a salva modificările.
Pentru mai multe detalii despre crearea meniurilor, consultați ghidul nostru pentru începători despre meniurile de navigare WordPress.
Acum, sunteți gata să afișați meniuri diferite utilizatorilor conectați. Iată o prezentare rapidă a tuturor metodelor pe care le vom acoperi în acest ghid:
- Metoda 1. Afișați meniuri diferite utilizatorilor conectați în WordPress folosind un plugin
- Metoda 2. Selectați manual meniul pentru utilizatorii conectați în WordPress folosind cod
- Sfat bonus: Mai multe cazuri de utilizare a logicii condiționale în meniurile WordPress
- Întrebări frecvente: Afișarea meniurilor diferite pentru utilizatorii autentificați în WordPress
- Resurse suplimentare: Roluri utilizator WordPress și navigare site
Gata să creați o experiență mai personalizată? Să începem! 🌟
Metoda 1. Afișați meniuri diferite utilizatorilor conectați în WordPress folosind un plugin
Cel mai simplu mod de a afișa diferite meniuri utilizatorilor conectați este să folosiți pluginul Conditional Menus. Deci, să-l instalăm și să-l activăm mai întâi.
Pentru mai multe detalii, puteți consulta ghidul nostru pas cu pas despre cum să instalezi un plugin WordPress.
La activare, va trebui să navigați la Aspect » Meniuri din tabloul de bord WordPress. Apoi, comutați la fila „Gestionare locații”.
De aici, veți vedea lista locațiilor de meniu disponibile definite în tema dvs. WordPress și meniurile care sunt afișate în prezent.
De exemplu, locația noastră „Meniu principal” afișează în prezent un „Meniu principal”.

Acum, trebuie să spunem pluginului să afișeze un alt meniu atunci când o anumită condiție este îndeplinită.
Pentru a face acest lucru, să dăm clic pe linkul „+ Meniu condițional”. Apoi, puteți selecta meniul de navigare pe care doriți să îl afișați utilizatorilor conectați din meniul derulant.

Apoi, veți dori să faceți clic pe linkul „+ Condiții”.
Aceasta va deschide o fereastră pop-up unde vei vedea o mulțime de condiții din care să alegi.

Pur și simplu bifați căsuța de lângă opțiunea „User logged in” (Utilizator conectat), apoi faceți clic pe butonul „Save” (Salvare).
Acum puteți vizita site-ul dvs. web pentru a vedea meniul utilizatorului conectat în acțiune. De asemenea, vă puteți deconecta de la administratorul WordPress pentru a vizualiza meniul de navigare care va fi afișat tuturor celorlalți utilizatori.

Metoda 2. Selectați manual meniul pentru utilizatorii conectați în WordPress folosind cod
Această metodă necesită adăugarea de cod pe site-ul dvs. WordPress. Dacă nu ați mai făcut acest lucru înainte, consultați ghidul nostru despre cum să copiați și să lipiți fragmente de cod în WordPress.
În general, blogurile îți vor spune că trebuie să adaugi un fragment de cod în fișierul functions.php al temei tale sau într-un plugin specific site-ului. Cu toate acestea, nu recomandăm această metodă, deoarece poate cauza probleme site-ului tău.
În schimb, puteți utiliza pluginul WPCode.
WPCode vă permite să adăugați fragmente de cod personalizate pe site-ul dvs. fără a edita direct fișierele temei. De asemenea, ajută la gestionarea acestor fragmente și asigură că acestea sunt executate în siguranță, minimizând riscul de a vă defecta site-ul.
ℹ️ Notă: La mărcile noastre partenere, WPCode a fost instrumentul nostru preferat pentru adăugarea de fragmente personalizate pentru a extinde funcționalitatea fiecărui site. Dacă doriți să aflați mai multe, puteți citi recenzia noastră completă despre WPCode.
Pentru a începe, să instalăm pluginul WPCode. Puteți folosi versiunea gratuită WPCode, deoarece are toate funcționalitățile de care aveți nevoie pentru a afișa diferite meniuri utilizatorilor conectați.
Dar dacă doriți acces la funcții avansate, cum ar fi istoricul revizuirilor codului și programarea lansării fragmentelor, atunci luați în considerare upgrade-ul la WPCode Pro.
Odată instalat, veți dori să navigați la Fragmente de cod » + Adăugați fragmente.

Aceasta va deschide galeria de fragmente de cod a WPCode.
De aici, puteți face clic pe butonul „+ Adăugați un fragment personalizat”.

Veți ajunge apoi la editorul de text al WPCode.
Următorul pas este să adăugați un titlu la fragmentul de cod și să alegeți „Fragment de cod HTML” din meniul derulant „Tip de cod”.

Odată terminat, pur și simplu copiați și lipiți următorul cod în câmpul „Previzualizare cod”:
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' );
Iată cum ar putea arăta în editorul tău WPCode:

Asigurați-vă că înlocuiți 43 și 35 cu ID-urile meniurilor de navigare pe care le-ați creat anterior.
Puteți găsi ID-ul unui meniu de navigare selectându-l pe pagina „Meniuri”. Veți vedea numărul ID-ului meniului în bara de adrese a browserului dvs.

Odată ce vă asigurați că toate detaliile sunt corecte, faceți clic pe butonul albastru „Salvare fragment”.
Și asta e tot!
Sfat bonus: Mai multe cazuri de utilizare a logicii condiționale în meniurile WordPress
Când vine vorba de navigare, logica condițională poate face mai mult decât să afișeze meniuri diferite pentru utilizatorii conectați. Iată câteva exemple rapide:
- Afișează Meniuri Diferite în Funcție de Rolul Utilizatorului: Poți afișa un meniu diferit pentru administratori față de colaboratori. De exemplu, afișează opțiuni doar pentru administratori, cum ar fi setările site-ului sau gestionarea utilizatorilor, pentru administratori, oferind în același timp linkuri de navigare generale colaboratorilor sau altor roluri de utilizator.
- Afișați meniuri diferite pe pagini diferite: Doriți un meniu unic pe pagina blogului sau pe paginile de produse? Logica condițională vă permite să creați meniuri specifice pentru fiecare, păstrând navigarea adaptată conținutului.
- Ascundeți Navigația pe Paginile de Destinație: Paginile de destinație funcționează cel mai bine fără distrageri. Utilizați logica condițională pentru a ascunde meniul de navigare și a concentra atenția asupra apelului la acțiune, cum ar fi un formular de înscriere sau o ofertă de produs.
Pentru a afla mai multe, poți consulta ghidul nostru despre cum să adaugi logică condițională la meniuri în WordPress.
Întrebări frecvente: Afișarea meniurilor diferite pentru utilizatorii autentificați în WordPress
Încă aveți întrebări despre afișarea diferitelor meniuri utilizatorilor în WordPress? Iată câteva răspunsuri rapide pentru a vă ajuta:
Pot afișa meniuri diferite în funcție de rolurile utilizatorilor?
Absolut. Puteți afișa meniuri unice pentru Administratori, Editori sau orice alt rol de utilizator personalizat pe site-ul dvs. Pluginul Conditional Menus oferă o opțiune simplă pentru a configura acest lucru, ceea ce este perfect pentru personalizarea navigării pentru membrii echipei dvs.
Este mai bine să folosiți un plugin sau să adăugați cod manual?
Pentru majoritatea utilizatorilor, recomandăm utilizarea unui plugin precum Conditional Menus sau WPCode. Aceste instrumente facilitează afișarea diferitelor meniuri fără a atinge fișierele temei.
WPCode este deosebit de util dacă preferați flexibilitatea utilizării codului. Vă permite să adăugați în siguranță fragmente PHP personalizate și să le gestionați din tabloul de bord WordPress – nu este nevoie să editați direct fișierul functions.php.
Codarea manuală este încă o opțiune bună pentru dezvoltatori, dar pentru toți ceilalți, un plugin este alegerea mai sigură și mai prietenoasă pentru începători.
Pot ascunde meniul de navigare pe anumite pagini?
Da, puteți utiliza aceeași logică condițională pentru a ascunde meniul de navigare pe pagini specifice. Aceasta este o strategie populară pentru paginile de destinație, deoarece elimină distragerile și menține vizitatorul concentrat pe apelul la acțiune.
Resurse suplimentare: Roluri utilizator WordPress și navigare site
Sperăm că acest articol v-a ajutat să învățați cum să afișați cu ușurință meniuri de navigare diferite pentru utilizatorii conectați în WordPress. În continuare, ați putea dori, de asemenea, să consultați ghidurile noastre despre:
- Cum să permiteți înregistrarea utilizatorilor pe site-ul dvs. WordPress
- Cum să Permiteți Utilizatorilor să Își Invite Prietenii să se Înregistreze în WordPress
- Cum să moderați înregistrările de noi utilizatori în WordPress
- Cum să împiedici WordPress să te uite cu funcția „Amintește-ți de mine”
- Cum să salutați fiecare utilizator cu un mesaj de bun venit personalizat în WordPress
- Cum să restricționați formularele WordPress doar pentru utilizatorii conectați
- Cum să stilizezi meniurile de navigare WordPress
- Cele mai bune pluginuri de abonament WordPress
Dacă ți-a plăcut acest articol, te rugăm să te abonezi la canalul nostru de YouTube pentru tutoriale video WordPress. Ne poți găsi, de asemenea, pe Twitter și Facebook.

Stephanie Gibbs
Am constatat că acest cod nu se executa decât dacă alegeam tipul de cod php. Când am schimbat din HTML în php, a fost fantastic!
Suport WPBeginner
Acesta este un detaliu important de reținut atunci când adăugați fragmente de cod!
Admin
Dennis Muthomi
Clear and actionable guide!
Thank you for this comprehensive guide on showing different menus to logged-in users in WordPress.
I particularly appreciate the two methods you’ve outlined – using the Conditional Menus plugin and the manual code approach.
You have certainly given me some ideas to enhance my own WordPress sites. Thanks again WPBeginner
Igoy Cavalera
Perfect!
Mulțumesc mult pentru articolul simplu. și m-ați salvat de câteva ore
Suport WPBeginner
Glad we could help save you that time
Admin
Alex
Thanks for the code – works as it should, appreciated
Suport WPBeginner
Ne bucurăm că ghidul nostru v-a putut fi de ajutor!
Admin
Paul K
Excelent! Dar unde găsesc fișierul function.php al temei mele?
Suport WPBeginner
Este în folderul temei dvs., puteți vedea mai multe despre asta pe pagina noastră de mai jos:
https://www.wpbeginner.com/glossary/functions-php/
Admin
Paul K
OK, l-am găsit, mulțumesc. Dar sunt nedumerit unde să pun codul suplimentar. Nu sunt familiarizat cu PHP, dar văd „” la sfârșit.
Suport WPBeginner
Pentru a lipi fragmente de cod, doriți să consultați ghidul nostru de mai jos, care acoperă unde să lipiți în fișierul functions.php, precum și unde să lipiți alt cod, dacă veți consulta alte tutoriale bazate pe cod:
https://www.wpbeginner.com/beginners-guide/beginners-guide-to-pasting-snippets-from-the-web-into-wordpress/
Admin
Clara
Funcționează excelent! Am problema că am două meniuri în partea de sus: un meniu de titlu și meniul principal. Când folosesc codul și utilizatorul este conectat, ambele meniuri se schimbă în meniul pentru utilizatorii conectați. Cum pot ajusta codul astfel încât meniul de titlu să rămână același?
Suport WPBeginner
Pentru ceea ce doriți, ar trebui să consultați articolul nostru de mai jos:
https://www.wpbeginner.com/plugins/how-to-add-conditional-logic-to-menus-in-wordpress/
Admin
Sergio
Mulțumesc foarte mult!
Suport WPBeginner
You’re welcome
Admin
Echo
Ar fi mult mai ușor dacă ați putea face acest lucru pentru un element de meniu specific, mai degrabă decât pentru un întreg meniu. Ce ar trebui să facă cineva cu 499 de elemente de meniu?
Suport WPBeginner
Nu am recomanda atâtea elemente de meniu, deoarece ar fi prea multe pentru ca cineva să le navigheze, ceea ce ar putea cauza o problemă SEO dacă linkurile din meniul dvs. nu adaugă valoare vizitatorilor dvs.
Admin
Evaldo Santos
100%. Tocmai l-am configurat cu tema Sahifa și funcționează perfect.
Continuați cu această treabă bună.
Jason
Thank you!!
Bk Millanzi
acest lucru este foarte util, dar există o modalitate de a afișa un nume de utilizator și un avatar care pot acționa ca un container pentru alte elemente de meniu de profil, ca un meniu derulant?
Amarnadh
Calea pe care ați arătat-o este bună doar pentru afișarea meniurilor personalizate. Dar ce se întâmplă dacă vreau să afișez conținutul meu unui utilizator conectat specific, bazat pe interesele sale? Adică în detaliu, cum ar fi diverse site-uri de oferte, când ne conectăm și salvăm interesele noastre, în momentul următor vedem oferte doar pe acel subiect specific. Putem face acest lucru posibil folosind plugin-uri WordPress?
Sam
Salut, mulțumesc pentru munca excelentă. Am o întrebare despre mai multe roluri de utilizator.
Deci am două meniuri principale, Meniul 1 și Meniul 2.
Aș dori ca toți utilizatorii (conectați sau nu) să vadă meniul principal, cu excepția cazului în care au rolul de utilizator „Alt”, caz în care Meniul 1 este înlocuit de Meniul 2.
Cum aș putea face asta?
Tendai Mugoni
Funcționează, mulțumesc
Curtis
@ERICLEE Poți crea o temă copil pentru a preveni acest lucru. Tocmai am adăugat acest cod și trebuie să fac același lucru.
shahzaib sarwer
este posibil să adăugați meniurile în profilul abonatului, cu excepția paginii de pornire, aceste pagini de meniu nu se afișează pe pagina de pornire, ci doar pe fiecare profil de abonat. dacă este posibil, vă rog să mă ghidați și să-mi spuneți cum să folosesc un plugin pentru asta.
shahzaib sarwer
este posibil să adăugați meniurile în profilul abonatului pe site-ul wp, dacă este posibil, atunci vă rog să mă ghidați ce să fac și cum să folosesc orice plugin pentru această lucrare.
Yuda
Cum poate fi realizat același lucru pe un site multi-lingv pentru membri? De exemplu, afișarea unui meniu diferit pentru utilizatorii conectați în engleză și un meniu diferit pentru utilizatorii conectați în germană?
Suport WPBeginner
Salut Yuda,
Dacă utilizați un plugin WordPress multilingv, atunci acest lucru ar trebui gestionat de plugin. Practic, va trebui să furnizați traduceri pentru meniurile dvs. multilingve.
Admin
solomon
Am adăugat meniul de conectare și meniul de deconectare, cum configurez pagina pentru conectare și deconectare ???,,
Jan-Paul Kleijn
Inițial m-am gândit la un plugin. Trebuie să renunț la a gândi așa.
Apoi am văzut postarea ta și am fost convins.
Îți mulțumesc pentru postare, m-ai ajutat foarte mult.
Phil
Mulțumesc mult pentru asta. Funcționează perfect.
Berbec
Salut,
Acest lucru funcționează perfect!
Dar îmi schimbă și meniul din subsol.. există o modalitate prin care meniul meu din subsol să rămână la fel?
Tarron Acuff
Deci, am 2 meniuri. Unul pentru public și altul pe care aș dori ca angajații să-l vadă când sunt conectați. Meniul angajaților ar înlocui meniul principal doar atunci când un angajat este conectat.
Iată ce folosesc în prezent în fișierul meu functions.php
// Setează rolul ca o clasă de corp
funcție 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’ );
***Aici este ceea ce am adăugat pentru CSS***
/* Mai întâi ascunde elementele meniului pentru utilizatorii non-“angajat” */
#top-menu li.menu-for-employee {
display: none;
}
/* Afișează elementele de meniu pentru utilizatorul „angajat” */
.role-employee #top-menu li.menu-for-employee { display: initial; }
Când mă autentific ca angajat, ambele meniuri sunt afișate.
Mulțumesc anticipat.
Wasim
Nu funcționează pentru mine. Afișează meniul implicit după ce adaug acest cod, chiar și meniul meu principal a dispărut.
Joe
Salut băieți,
Un tutorial bun, dar mă întrebam dacă ai putea folosi aceeași abordare pentru a înlocui un meniu receptiv la o anumită dimensiune a ecranului?
Am două meniuri, dar aș prefera să am doar un singur meniu receptiv la 768 px, înlocuind meniul cu altul.
Mulțumesc
Pet
Muncă uimitoare cu ghidurile tale. Construiesc primul meu site WordPress și găsesc site-ul tău incredibil de util în ghidarea mea, mulțumesc.
Voiam cu adevărat să afișez meniuri diferite pentru utilizatorii conectați (cum ar fi „editare profil”) și pentru utilizatorii deconectați, iar acest lucru m-a adus aici. Codul pe care l-ați partajat funcționează bine pentru mine. Acum am două meniuri care se afișează frumos. Cu toate acestea, ultima parte a codului, șirul add_filter, cred că mă încurcă puțin. Acum, un alt meniu se afișează sub widget-ul din bara laterală. Meniul „logged-in”. Folosesc tema sydney și am încercat, fără succes, să elimin acest meniu inutil. Aveți vreo idee cum pot face să nu se afișeze?
Suport WPBeginner
Salut Pet,
Vă rugăm să verificați pagina Appearance » Widgets (Aspect » Widgeturi) pentru a vedea dacă aveți un meniu personalizat adăugat ca widget acolo. Dacă este acolo, îl puteți șterge pur și simplu.
Admin
Pet
What genius! It worked! Thanks for the wonderful tip!!
Jomcy Johny
Și eu am aceeași problemă.. Vă rog să mă ajutați.. dar nu am widget-uri.. Mulțumesc..!
Alex Hammerschmied
Works like a charm…
Thanks for that.
Btw i love theses short tutorials
giovanna
Bună, mă puteți ajuta, vă rog? Am o altă problemă, vă rog? Trebuie să ascund un meniu pentru toți și să permit doar comercianților să vadă, ce am de făcut, vă rog? ce cod specific trebuie să folosesc, vă rog?
ericlee
Când modificați fișierul functions.php în acest fel - nu s-ar șterge când faceți upgrade la următoarea versiune WP?
Suport WPBeginner
Da, va fi șters când veți actualiza tema. Pentru a preveni acest lucru, puteți crea un plugin specific site-ului.
Admin
Ramona
Va funcționa acest lucru pentru o instalare Buddypress? Mulțumesc.
Nikhil Chaudhari
funcția setează și meniul secundar? eu vreau să setez doar meniul primar. cum fac asta
Nikhil Chaudhari
această funcție de mai sus setează meniul secundar, tot ce vreau este să setez doar meniul antet?
Cum să fac asta
Asfaha
Salut,
mulțumesc mult pentru această soluție, am aplicat-o și funcționează perfect și mi-a economisit instalarea unui plugin suplimentar.
Shafaq
acesta este codul pentru înlocuirea meniului existent cu meniul pentru utilizatorul conectat prin adăugarea locației top-menu și cu meniul loggedin nu este necesar altfel cu acesta
add_filter( 'wp_nav_menu_args', function ( $args )
{ if( is_user_logged_in() && $args['theme_location'] === 'top-menu' ) { $args['menu'] = 'loggedin'; } return $args; });
Ashraf Ali
———————————————————–
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’ ); ———————————————————–
Acum cum fac să funcționeze cu
—————————————————
———————————————————————————————————————-
Vă rugăm să ne sfătuiți
Iqbal Mahmud
Dacă vreau să ascund o pagină de utilizatorii deconectați dintr-un singur meniu, ce trebuie să fac?
Kasper
Puteți bloca pagini pentru a le ascunde de utilizatorii deconectați. Există mai multe pluginuri care fac acest lucru foarte ușor. Users Ultra îmi vine în minte.
Zev
Totul a funcționat perfect.
Cu toate acestea, încă am problema unui meniu principal repetat în secțiunea de meniu de navigare secundară pe care nu reușesc să o elimin (nu am configurat un meniu secundar).
Vince
Am exact aceeași problemă. Schimbarea se reflectă în locația meniului secundar din senin și nici eu nu am configurat un meniu secundar. :/ Vă rog să mă sfătuiți cum să procedez.
Mulțumesc anticipat.
Chiranjeevi Vinodkumar
ASCULTĂ!!!
Majoritatea dintre noi, folosește teme.
Așadar, mai întâi accesați fișierul functions.php al temei dvs.
Căutați cu navigare ca și cuvânt cheie.
În cazul temei Shopkeeper...
================================================================== register_nav_menus( array( 'top-bar-navigation' => __( 'Navigare Bară Superioară', 'shopkeeper' ), 'main-navigation' => __( 'Navigare Principală', 'shopkeeper' ), 'footer-navigation' => __( 'Navigare Subsol', 'shopkeeper' ), ===================================================================
Așa arăți.. deci alege-l pe cel care este principal, în cazul meu, este „Top Bar Navigation” de aceea am folosit „top-bar-navigation”
Am folosit următorul cod și a funcționat ca uns!!!
Aceasta este modalitatea mea de a mulțumi autorului.
Bună ziua !!
Ann Novakowski
Iată ce a funcționat pentru mine cu WP. Am folosit acest lucru pentru a crea un meniu primar specific pentru utilizatorii Buddypress conectați. Nu va afecta meniul din subsol SAU meniul de rețele sociale pentru niciun vizitator, așa că toată lumea vede aceleași meniuri secundare, indiferent dacă sunt conectați sau nu. Acest lucru se bazează pe toate comentariile de mai sus (HT către Fransiska!).
Am adăugat următoarele în fișierul functions.php al temei copil:
// SCHIMBA MENIUL PRINCIPAL =DOAR= DACĂ MEMBRUL ESTE CONECTAT
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’ );
Oliver
Nu știu ce s-a întâmplat cu comentariul meu, dar –> ” <– acestea sunt corecte!
fidel toro
mulțumesc!! m-ați ajutat mult
Matthias Campbell
Salut,
Am adăugat acest cod (probabil greșit) în fișierul functions.php din tema mea, în editorul WordPress, și acum am o eroare constantă de server 500. Chiar și după ce am eliminat codul.
Înainte de asta, am încercat să creez un plugin specific site-ului, dar nu a funcționat. Ați putea, vă rog, să-mi spuneți dacă fragmentul necesită o paranteză de deschidere și una de închidere?
Dacă da, cum fac asta?
Gazda mea nu mă poate ajuta acum și mi-au cerut să plătesc un programator pentru a mă ajuta cu 50 de euro pe oră. Vă rog să mă ajutați. Este urgent.
Sunt încă conectat la WordPress, dar orice aș face, primesc eroarea 500 cu acest mesaj specific.
Eroare de analiză PHP: eroare de sintaxă, ‘}’ neașteptat în linia 1194.
Acest lucru se datorează faptului că am lipit fragmentul după tot textul din fișierul functions.php.
Am apoi eliminat fragmentul pentru a vedea dacă asta ar rezolva problema, prin editor și FTP, și încă primesc eroarea.
Aștept cu nerăbdare răspunsul dumneavoastră.
Cu stimă
Suport WPBeginner
Depinde de unde adaugi codul. Dacă există o etichetă PHP de închidere înainte, atunci trebuie să adaugi o etichetă de pornire PHP precum <?php
Dacă acest cod este ultimul lucru din fișierul functions, atunci nu trebuie să adăugați o etichetă de închidere.
Admin
Hubert
Dacă aveți mai multe locații de meniu și doriți să aplicați meniuri diferite pentru fiecare locație, puteți utiliza codul de mai jos:
function my_wp_nav_menu_args( $args = ” ) {
// Primary menu location
if( 'primary-main' == $args['theme_location'] ) {
if( is_user_logged_in() ) { $args[‘menu’] = ‘Primary-Logged-In’; } else { $args[‘menu’] = ‘Primary-Logged-Out’; }
return $args;
}
// Locația meniului secundar
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’ );
Haji
Acest lucru nu funcționează, cineva știe codul corect dacă ai 2 sau mai multe meniuri?
Ravikant
Perfect, frate. Funcționează... muncă uimitoare
Leopold
A fost aproape prea ușor!
Mulțumesc mult pentru articolul simplu.
În acest fel nu trebuie să instalez niciun plugin..
Gaurang
Cred că este mai bine să folosiți pluginul IF MENU. https://wordpress.org/plugins/if-menu/
Creând două meniuri separate în acest fel, utilizatorul trebuie să creeze/actualizeze meniul de două ori.
Chris
Salut Gaurang,
Sunt curios să aflu de ce crezi că utilizarea pluginului este mai bună decât codificarea fișierului functions.php? Mi s-a spus cu ceva timp în urmă să fiu atent la câte pluginuri sunt de fapt utilizate pentru un site WordPress, iar codul de mai sus pare suficient de simplu; minus faptul că trebuie să monitorizezi de fiecare dată când tema ta se actualizează...
Mulțumesc,
Rub
Excelent, cum pot să-l folosesc pentru a afișa meniul pentru utilizatorul conectat care are un anumit rol?
Kit Johnson
Acest lucru a funcționat atât de simplu și elegant. Nu credeam că va fi atât de ușor. Mulțumesc!
Jason Sisson
Acest lucru este grozav, l-am încercat. Funcționează. dar aș dori, de asemenea, să redirecționez în funcție de rol
este asta simplu sau mult mai greu
Ryan R. Bayne
Mulțumesc. Lucrez cu funcții de meniu pentru prima dată.
Crearea pluginului WTG Portal Manager care va permite definirea foarte rapidă a unui portal. Fiecare portal având propriul meniu. Pluginul face relația dintre portal și meniu mai clară, plus oferă alte opțiuni unice.
veer2412
cum pot afișa postări diferite pentru utilizatori diferiți??
veer2412
mulțumesc pentru ajutor.. dar ce fac dacă vreau să afișez utilizatorilor diferiți postări pe site-ul meu.. există vreo modalitate de a face asta folosind cod?