Problemă cu bara de administrare și antetul fix în WordPress
Am stilizat antetul site-ului meu să aibă o poziție fixă în partea de sus. Când sunt autentificat în WordPress, bara de navigare pentru administrare WordPress acoperă secțiunea superioară a antetului meu, făcând imposibil accesul la navigarea din partea de sus. Aș dori ca bara de administrare WordPress să împingă navigarea mea mai jos, astfel încât ambele să fie vizibile. Știe cineva o soluție pentru a rezolva această problemă?
Un exemplu al problemei mele poate fi găsit la... www.nickriversdesign.com/dev
body.admin-bar este selectorul corect (și acesta este răspunsul corect). Răspunsul lui Zach L afectează toți utilizatorii autentificați, dar doar utilizatorii autentificați cu permisiuni de editare a conținutului au bara de administrare vizibilă și au nevoie ca antetul să fie mutat mai jos pe pagină.

interesant... nu am avut niciodată o configurare cu utilizatori fără aceste permisiuni. Presupun că este la fel ca și când în setările utilizatorului aceștia dezactivează bara de administrare.

Notă de versiune: .admin-bar
nu mai apare în WordPress 4. Acum se numește #wpadminbar
și nu încadrează conținutul, prin urmare soluția de mai sus nu poate fi aplicată pentru versiunea 4+

Este disponibilă și o versiune SASS, împreună cu explicații pentru rezoluțiile mobile/desktop (site-uri responsive) și abordarea mobile-first: https://www.sitepoint.com/getting-sticky-headers-wordpress-admin-bar-behave/

Încearcă acest lucru pentru WordPress 4+. Verifică dacă bara de administrare este prezentă și, dacă da, mută antetul fixat puțin mai jos pentru a compensa.
//remediere pentru bara de administrare
if ($('#wpadminbar')[0])
$('.site-header').css('top', '32px')

Te rog să încerci să adaugi o mică explicație - asta va permite autorului întrebării și viitorilor utilizatori să învețe și să înțeleagă ce se întâmplă, nu doar să fie un loc unde oamenii își fac codul scris de alții. Mulțumesc pentru răspuns.

Căutam de ceva timp o soluție pentru a ajusta bara de administrare WordPress cu navbar-ul fixed-top din Bootstrap 5. Aceasta a fost cea mai bună soluție care a funcționat perfect pentru mine fără a adăuga prea mult cod suplimentar. Mulțumesc!

Cred că pe dispozitivele cu lățimi mai mici, wpadminbar nu este poziționat fix. Așadar, dacă derulezi documentul pe un smartphone, bara de administrare va urmări scroll-ul și nu va rămâne în partea de sus a ferestrei. Ținând cont de acest aspect, de ce să nu adăugăm niște JavaScript în subsolul temei tale, imediat după apelul wp_head()
. În acest fel, putem ținti lățimea dispozitivului și dacă documentul are sau nu adminbar. Apoi, pur și simplu creăm niște reguli CSS și le adăugăm în head-ul documentului - ca mai jos!
<script>
( function(e) {
var ab = document.getElementById( 'wpadminbar' );
if ( typeof( ab ) === 'object' && window.innerWidth >= 610 ) {
var abh = ab.offsetHeight || ab.clientHeight || ab.scrollHeight;
var style = document.createElement( 'style' );
style.id = 'adminbar_main_nav_controle_rules';
document.getElementsByTagName( 'head' )[0].appendChild( style );
var rules = document.createTextNode( 'body.admin-bar .main-navigation.fixed { margin-top: ' + abh + 'px !important; }' );
style.appendChild( rules );
console.debug( 'spațiul wpadmibar este acoperit' );
}
})();
</script>
Presupunând că navigația ta are clasa 'main-navigation'
și la scroll adaugi o altă clasă numită 'fixed'
. Schimbă CSS-ul pentru a ținti panoul tău de navigație prin înlocuirea lui 'body.admin-bar .main-navigation.fixed'
cu orice ai dori să folosești pentru a ținti al tău.
Poate fi îmbunătățit, de exemplu, verificând dacă bara de administrare este fixă sau nu, dar pentru moment, sper că te va ajuta.
