Nu mi-a plăcut niciodată API-ul pentru setări din WordPress. Mi se pare greu, peste mână, țâșpe hooks etc. Prin urmare am facut un mic wrapper.
By default adaugă un entry/instanță în meniul Settings (dar s-ar putea modifica ușor să facă un entry nou în sidebar & submenus). De asemenea adaugă hooks ce înregistrează și încarcă scripts & styles doar pe pagina respectivă de opțiuni (util în cazul unul color picker, sortable, tabs etc).
add_settings_field, funcția care adaugă field-urile propriu zise, nu întoarce nimic. Și ca să fac toată povestea să întoarcă un string aș complica foarte mult - inutil* aș putea spune - toată povestea.
Cea mai bună chestie pe care aș putea s-o fac ar fi să adaug câteva filtre pe input-uri (deși chiar și asta mi se pare un pic overkill)
Folosesc clasa asta (în diferite versiuni, ce-i drept) de ceva timp. Și pot să-ți spun că am avut nevoie să alterez input-urile fix niciodată.
Ia de aici și te crucește! Nu o dată am avut nevoie doar să extind un pic clasa și de fiecare dată am sfârșit prin a dubla complet metoda start_el doar pentru a face mici ajustări…
Nu e incomod sa testezi cu output buffer, cand e mai simplu sa testezi direct rezultatul functiei?
Unde sunt testele?
Echo vs Return - Functions should never echo code, it should always return. This isn’t as bad as the WordPress 1.x days, but it’s still on my list of issues. http://milesj.me/blog/read/wordpress-is-bad-mmmk
Să-ți spun drept, și pentru mine e un pic greu să înțeleg ce se întâmplă acolo. Sunt mizeriile WordPress-ului; asta avem, cu asta defilăm. Nu cred că înțeleg varianta short.
Nu sunt teste pentru că încă încerc să învăț disciplina asta.