Extinderea boilerplatei cu tema WordPress

  1. 1. Introducere în personalizatorul de temă WordPress
  2. 2. Interacționând cu personalizatorul de temă WordPress
  3. 3. Boilerplate de personalizare a temei WordPress
  4. 4. Acum citesc: Extinderea boilerplatei cu tema WordPress
  5. 5. Tema Customizer Boilerplate – Opțiuni condiționale, Teme pentru copii și plugin-uri

Partea a 3-a din seria Personalizator de temă te-a prezentat la Boilerplate cu tema personalizatoare, care vă permite să simplificați codul care gestionează opțiunile dvs. de temă. Tot ce trebuie să faceți este să treceți o serie de câmpuri de opțiuni, iar placa de cazan va avea grijă să înregistreze secțiuni, setări și controale personalizate pentru teme în spatele scenei.


Până acum, boilerplate v-a permis să utilizați câmpuri text, casete de selectare, butoane radio și selectați câmpuri în personalizatorul temelor, acest articol vă arată cum îl puteți extinde.

Notă: Înainte de a continua, vă rugăm să descărcați cea mai recentă versiune a Boilerplate de personalizare a temei WordPress din depozitul său Github. Am adus câteva îmbunătățiri de la ultimul tutorial și este important ca codul dvs. să fie actualizat. Aruncați o privire la postarea anterioară pentru mai multe note cu privire la modificări, dar pe scurt, după ce copiați placa de cazan în folderul dvs. tematic, nu trebuie să editați fișierele sale deloc – toată editarea se face folosind cârlige de filtru și acțiune..

Conectare la placă de încălzire cu tema personalizatoare

Există mai multe cârlige de acțiune și de filtrare în boilerplate de personalizare a temei WordPress. Puteți conecta la oricare dintre ele din fișierul funcții.php al temei utilizând ADD_ACTION și add_filter funcţii:

  • „Thsp_cbp_directory_uri“ – Cârligul de filtru definit în helpers.php, vă permite să schimbați locația Customizer Boilerplate în folderul dvs. tematic. În mod implicit, calea plăcilor de cazan arată astfel – get_template_directory_uri (). „/-Șabloane de personalizare“ – dar dacă preferați să-l mutați într-o locație personalizată, acesta este elementul care vă poate ajuta.
  • „Thsp_cbp_menu_link_text“ – Cârligul de filtru definit în helpers.php, vă permite să modificați legătura de text din meniu. Boilerplate adaugă un link sub Aspect în tabloul de bord WordPress, permițând utilizatorilor acces ușor la Tema Personalizator. În mod implicit, acel link va spune „Personalizatorul temelor” și puteți schimba textul folosind „thsp_cbp_menu_link_text” hook filter.
  • „Thsp_cbp_capability“ – Cârlig de filtru definit în helpers.php. Vă permite să modificați capacitatea implicită necesară folosită în metoda $ wp_customize-> add_setting.
  • „Thsp_cbp_option“ – Cârlig de filtru definit în helpers.php. Dacă utilizați „opțiunea” în argumentele setărilor, utilizați acest cârlig pentru a schimba numele intrării, valorile setărilor dvs. de temă vor fi stocate în tabelul wp_options. Valoarea implicită este „thsp_cbp_theme_options”, asigurați-vă că vă conectați la acesta și că o schimbați în ceva care are numele dvs. de temă.
  • „Thsp_cbp_options_array“ – Cârligul de filtru definit în options.php, TREBUIE să vă conectați la acesta și să înlocuiți tabelul de opțiuni implicit (care conține opțiuni de probă) cu opțiuni utilizate în tema dvs. Voi repeta asta, îndrăznește-l și subliniez-o: Ytrebuie să vă conectați la acesta și să înlocuiți tabelul de opțiuni implicite cu opțiuni care sunt utilizate în tema dvs..
  • „thsp_cbp_custom_controls“ – Cârlig de acțiune definit în custom-controls.php, prin conectarea la el puteți crea propriile controale personalizate, continuați să citiți pentru a vedea un exemplu despre cum să o faceți.
  • „tshp_cbp_remove_sections“„tshp_cbp_remove_controls“ și „tshp_cbp_remove_settings“ – Cârlige de filtrare definite în customizer.php. Puteți să le transmiteți tablouri de ID-uri de secțiune încorporate (sau ID-uri de control, sau ID-uri de setări) pentru a elimina unele dintre secțiunile, controalele sau setările încorporate.

Notă: Deși suntem la extensibilitate și creăm propriile cârlige, astfel încât alți dezvoltatori să le poată folosi pentru a vă extinde codul, este imposibil să exagerați cât de important este acest lucru. Până la urmă, așa funcționează WordPress (core). Și nu am putut să mulțumesc măr renet și a lui articole suficient pentru a-mi face această idee în cap.

Controale personalizate

Versiunea actualizată a Tema Personalizator (pe care tocmai ați verificat-o, nu?) Are câteva alte controale pe care le puteți utiliza – câmpul de textare, câmpul cu numere HTML5 și câmpul de imagini, care este practic o versiune de lux a butoanelor radio..

Aceste controale personalizate sunt definite în custom-controls.php, nu le voi parcurge pe toate aici, dar să aruncăm o privire la unul (câmp de numere HTML5) pentru a vedea cum funcționează:

/ **
* Creează controlul personalizator pentru câmpul de tip [type = number]
*
* @since Theme_Customizer_Boilerplate 1.0
* /
clasa CBP_Customizer_Number_Control extinde WP_Customize_Control {

public $ tip = 'număr';

funcția publică render_content () {
ecou '„;
}

}

După cum puteți vedea, tot ce trebuie să faceți este să definiți noul tip de control $ și funcția sa render_content care scoate controlul în ecranul Personalizator Tema..

Utilizarea controalelor personalizate încorporate de la Customizer Boilerplate

Este la fel ca câmpurile simple cuprinse în tutorialul anterior, singurul lucru de care trebuie să fiți conștienți sunt „tipurile” pe care trebuie să le utilizați pentru fiecare:

  • Câmp de număr – ‘număr’
  • Câmpul de textare – „Textarea“
  • Imagini care acționează ca butoane radio – „Images_radio“, iată un exemplu al acestui control într-o gratuită viitoare Cazuela tema:

Tema Boilerplată cu personalizator

Cunoașterea numelor acestor noi tipuri de control, adăugarea unuia este ușoară. Iată cum puteți adăuga un control câmp numeric într-un tablou care conține toate opțiunile dvs.:

/ *
* ============
* ============
* Câmp de număr
* ============
* ============
* /
'new_number_field' => array (
'setting_args' => tablou (
'default' => '',
'type' => 'opțiune',
'capability' => $ thsp_cbp_capability,
'transport' => 'reîmprospătare',
),
'control_args' => tablou (
'label' => __ ('Număr', 'my_theme_textdomain'),
'type' => 'număr', // Controlul textarea
'prioritate' => 8
)
)

Notă: Dacă nu sunteți sigur unde să adăugați acest lucru, verificați secțiunea „Utilizarea Array Opțiunilor pentru a adăuga secțiuni de personalizare, setări și controale” din partea 3 a acestei serii. De asemenea, există un eșantion pentru fiecare dintre controalele personalizate din fișierul options.php.

Adăugarea propriilor controale personalizate

Să revenim la cârligul de acțiune „thsp_cbp_custom_controls” despre care am menționat anterior:

/ **
* Cârlig de acțiune care vă permite să vă creați propriile controale
* /
do_action ('thsp_cbp_custom_controls');

Este un simplu cârlig de acțiune WordPress care vă permite să adăugați propriile controale personalizate, fără să modificați fișierele cu tema personalizatoare Tema. De ce ai vrea să eviți să le editezi? Deoarece, în schimb, te conectezi la placa de cazane, ori de câte ori cineva o actualizează, poți doar să apuci cea mai recentă versiune, să o arunci în tema ta și să nu pierzi modificările pe care le-ai făcut. Gândiți-vă că editați fișierele de bază WordPress vs. scrierea unui plugin, editarea unei teme vs. crearea unei teme pentru copii etc..

Dacă vreodată trebuie să adăugați propriile controale personalizate, astfel puteți face acest lucru:

function my_theme_add_customizer_boilerplate_control () {
/ **
* Creează control personalizat pentru a fi utilizat cu Tema Customizer Boilerplate
* Utilizați un prefix de clasă unic!
*
* @since Theme_Customizer_Boilerplate 1.0
* /
clasa CBP_Customizer_My_Control extinde WP_Customize_Control {

public $ type = 'my_type'; // Schimba asta

funcția publică render_content () {
// Ieșirea controlului merge aici
}

}
}
add_action ('thsp_cbp_custom_controls', 'my_theme_add_customizer_boilerplate_control');

Asigurați-vă că prefixați clasa de control personalizată cu ceva unic, astfel încât numele său să nu se ciocnească cu o altă clasă. Am folosit „CBP_” (Customizer Boilerplate) – din moment ce utilizați placă de cazan într-o temă, numele temei dvs. are mult sens și ar trebui să funcționeze bine pentru dvs..

Personalizatorul temei: Ce este următorul?

În momentul în care Boilerplate de personalizare a temei WordPress este extensibilă prin intermediul cârligelor, vom arunca o privire pentru a adăuga „opțiuni tematice condiționate” – cele care vor apărea doar dacă un anumit plugin este activ și vă va ajuta să mențineți ecranul personalizatorului tematic..

Ce părere aveți despre Customizer Boilerplate până acum? Aveți de gând să îl utilizați în temele dvs.? Aveți idei despre cum ar putea fi îmbunătățit? Feedbackul dvs. este binevenit, întotdeauna.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map