Widgeturile sunt o parte atât de integrantă a temelor WordPress încât este greu de imaginat o temă WordPress fără widgeturi. Widgeturile sunt scripturi executabile pe care le puteți pur și simplu trage și plasa în barele laterale sau în orice altă zonă pregătită pentru widgeturi din tema dvs. Mulți dintre cititorii noștri utilizează widgeturi pentru a adăuga elemente personalizate barei lor laterale. Cu toate acestea, acest articol este pentru acei utilizatori curioși care doresc să învețe cum să adauge bare laterale dinamice pregătite pentru widgeturi sau zone pregătite pentru widgeturi în temele WordPress.
Înregistrarea barelor laterale sau a zonelor pregătite pentru widgeturi în WordPress
Primul lucru pe care trebuie să-l faci este să-ți înregistrezi bara laterală sau zona pregătită pentru widget-uri pentru tema ta. Poți înregistra mai multe bare laterale și zone pregătite pentru widget-uri. Copiază și lipește acest cod în fișierul functions.php al temei tale
function wpb_widgets_init() {
register_sidebar( array(
'name' => __( 'Main Sidebar', 'wpb' ),
'id' => 'sidebar-1',
'description' => __( 'The main sidebar appears on the right on each page except the front page template', 'wpb' ),
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget' => '</aside>',
'before_title' => '<h3 class="widget-title">',
'after_title' => '</h3>',
) );
register_sidebar( array(
'name' =>__( 'Front page sidebar', 'wpb'),
'id' => 'sidebar-2',
'description' => __( 'Appears on the static front page template', 'wpb' ),
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget' => '</aside>',
'before_title' => '<h3 class="widget-title">',
'after_title' => '</h3>',
) );
}
add_action( 'widgets_init', 'wpb_widgets_init' );
În acest cod, am înregistrat două bare laterale. Le-am dat nume și descrieri pentru a le identifica pe ecranul Widget-uri. Parametrul description poate fi folosit pentru a spune utilizatorilor unde apare această bară laterală în temă. wpb este numele temei pe care lucrăm, este folosit aici pentru a face aceste șiruri de caractere traductibile. Ar trebui să îl înlocuiți cu numele temei dvs.

Adăugarea barelor laterale dinamice pregătite pentru widgeturi în fișierele temei WordPress
Până acum am înregistrat doar bare de meniu dinamice. Utilizatorii pot trage și plasa widgeturi în aceste bare de meniu din ecranul Aspect » Widgeturi. Cu toate acestea, aceste bare de meniu nu vor apărea pe site-ul dvs. decât dacă sunt apelate într-un șablon precum sidebar.php sau oriunde altundeva doriți să le afișați. Pentru a adăuga aceste zone de widgeturi, editați fișierul șablon unde doriți să le afișați și lipiți acest cod:
<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?> <div id="secondary" class="widget-area" role="complementary"> <?php dynamic_sidebar( 'sidebar-1' ); ?> </div> <?php endif; ?>
În acest cod exemplu, am folosit ID-ul barei de meniu pentru a apela bara de meniu pe care dorim să o afișăm aici. Schimbați ID-ul barei de meniu pentru a afișa o altă bară de meniu. De exemplu, puteți înregistra trei bare de meniu pentru zona de subsol și apoi să le apelați una câte una în șablonul footer.php al temei dvs.
Widget-urile pot fi foarte puternice. Poți adăuga widget-uri în postările și conținutul paginilor tale, să faci widget-urile tale de text colorate, sau să extinzi puterea widget-urilor implicite WordPress. Barele laterale pregătite pentru widget-uri, plasate corect, permit utilizatorilor să adauge elemente personalizate pe site-urile lor folosind o interfață simplă de glisare și fixare.
Sperăm că acest articol v-a ajutat să învățați cum să adăugați bare laterale dinamice cu widget-uri pregătite în WordPress. Vă recomandăm să studiați codul din framework-uri de teme precum Genesis pentru a învăța cum profesioniștii le folosesc în produsele lor. Pentru întrebări și feedback, vă rugăm să lăsați un comentariu mai jos.

nabil
salut, am nevoie de două coloane în bara laterală! cum pot face asta cu css
Jason
Unde pot extinde funcționalitatea widget-urilor mele WordPress
Milada
Salutare echipă din nou,
îmi pare rău să vă deranjez, dar aș dori să specific că aș avea nevoie de un widget deasupra widgetului curent din bara laterală principală din dreapta și celălalt widget în partea stângă a articolului din mijloc.
Cum ar trebui să procedez?
Vă mulțumesc,
Milada
Milada
Salutare echipă din nou,
Cum adaug un câmp în widget și unde și unde lipesc un cod de câmp pentru a avea acolo linkuri de afiliat?
Mulțumesc,
Milada
Tanmay Bala
vreau să învăț cum să folosesc pluginul DB în WordPress și framework-ul redux.
Marc
Acest tutorial a fost de mare ajutor.
Am încercat să realizez acest lucru timp de aproximativ o săptămână.
Frumos și la obiect.
Mulțumesc!
Laura
Mă întrebam doar, înainte de a lipi codul, funcționează pe o temă care nu vine inițial cu o bară laterală? Folosesc Book Lite care are doar subsoluri.
Suport WPBeginner
Da, funcționează.
Admin
Laura
Mulțumesc până acum – am încercat să înregistrez bara laterală, dar ori de câte ori apăs „salvare” primesc ecranul alb al morții – pe care nu l-am mai avut înainte. Aveți sugestii despre ce ar putea fi greșit?
Lohith
Thanks Alot
Its really wonderful and simple method to explain….
Bakopu
Vă mulțumesc foarte, foarte mult, domnule. Unde sunteți, domnule, dorim să primim binecuvântările dvs. atingându-vă picioarele.
akhilesh
mulțumesc domnule, aceste postări mi-au fost de mare ajutor
Marcos Nakamine
A funcționat perfect
Mulțumesc
gWorldz
Am probleme în a face widget-ul să se afișeze o.O
Widgetul se înregistrează și se afișează corect în backend fără probleme, totuși, va afișa conținutul widgetului meu doar dacă includ conținut în widgetul anterior.
Folosesc o temă copil din 2011 și înregistrez o zonă suplimentară pentru subsol.
Fragment de cod functions.php:
https://gist.github.com/gWorldz/76273b5901e1b5c4759b#file-functions-php
sidebar-footer.php
https://gist.github.com/gWorldz/b6177ccc9734718dd636#file-sidebar-footer-php
style.css
https://gist.github.com/gWorldz/0f24a9350da164ee2f29#file-style-css
Aveți idee ce fac greșit sau ce cauzează această problemă?
Tiger
Ați primit vreodată ajutor pentru asta? Am aceeași problemă.
MJ
Voiam doar să vă mulțumesc pentru asta. Am căutat pe Google pentru a afla cum să înregistrez o bară de meniu în WordPress și am vizitat câteva alte site-uri înainte de acesta, iar al dvs. a avut cele mai bune, mai clare și mai ușor de înțeles instrucțiuni. Bine făcut.
arvind
postarea ta îmi este de ajutor,
mulțumesc !!!!
Dharmendra Prajapati
În sfârșit am pregătit bara laterală cu widget-uri dinamice după 23 de zile… Am căutat pe toate site-urile… și în cele din urmă am ajuns pe site-ul dvs.
Mulțumesc
Kevin
În al doilea fragment, unde inserați codul widget-ului în șablon, unde aveți
div id=”secondary”
Ar trebui ca acest id să se schimbe cu fiecare zonă de widget.
De ex.:
Prima, Secundară, A treia, a patra, etc.
Suport WPBeginner
Kevin, da, ar trebui, și ar trebui să fie numit după zona widget-ului sau bara laterală pe care o reprezintă.
Admin
SS
Funcționează pentru înregistrarea barelor laterale, dar când accesez ecranul Aparență » Widget-uri, văd toate widget-urile mele, dar nimic în care să le trag.
Suport WPBeginner
SS, când ați înregistrat cu succes o bară laterală dinamică cu widget-uri pregătite, aceasta va apărea pe ecranul Widget-uri. Acest lucru înseamnă că înregistrarea barelor laterale probabil nu a funcționat.
Admin
Steve Smart
Salut –
Acesta este un post foarte util. Mulțumesc!
Am avut succes folosind o zonă de widget dinamică, acum încerc să implementez mai mult de una. Totul pare să funcționeze conform așteptărilor, cu excepția unei probleme ciudate în panoul de administrare. Dacă trag un widget de text în a doua zonă de widget dinamică, pot adăuga conținut așa cum v-ați aștepta și îl pot salva, iar acesta produce rezultate pe paginile mele conform așteptărilor, însă dacă revizitez pagina de widget-uri din panoul de administrare, a doua zonă de widget nu pare să conțină niciun widget.
Folosesc o temă copil twentytwelve și Wordpress 3.7.1.
Aveți vreo idee?
Jackson
Hearty thanks….You have done such a wonderful work…thanks thanks thanks…
JP
mulțumesc, am găsit acest lucru util. direct la subiect.
Praveen Prasad
Poți să-mi spui unde a început funcția de apel?
Ed Du
Puteți folosi și Headway cu un bloc suplimentar și acesta va avea grijă de toate acestea. Sau pagelines, de altfel.