Draga tema Devs, Nehajte lepiti naključne izseke kode v function.php

Predstavljajte si, da ta scenarij najdete res kul delček kode na enem od mnogih mest WordPress-a in ga prilepite v datoteko funkcije.php teme..


Odrezek kode deluje kot oglaševano, nato pa svojo temo izpustite v prodajo na dobro znanem tematskem trgu. Izberimo naključnega iz klobuka in pojdimo s … ThemeForest.

Nenadoma postane vaša tema resnično priljubljena, morda zaradi obsežnega seznama na videz uporabnih “funkcij”, ki ste jih navedli na prodajni strani svoje teme. Z uspehom vaše teme se pojavljajo tudi številna vprašanja o podpori, ki se večinoma nanašajo na prelom vtičnikov med uporabo vaše teme.

Kako se je to zgodilo, se sprašujete? Mogoče je to zato, ker ste naključno prilepili naključne globusove kode WordPress v datoteko svoje funkcije.php, ne da bi dejansko razmišljali ali predvidevali morebitne težave z združljivostjo.

Primer iz resničnega življenja

Poskušal sem najti delček kode, ki bi povlekel vse priložene slike iz objave in jih nato samodejno prikazal na tej objavi. Na koncu sem našel delček kode na Stack Overflow, prilepil v datoteko mojih funkcij in težava je bila videti.

Prva vrstica kode je bila naslednja:

add_filter (‘the_content’, ‘strip_shortcodes’);

No, saj je delovalo, nisem si mislila ničesar od tega. Pozneje sem poskušal vstaviti kontaktni obrazec s kratko kodo. Presenečenje, ni šlo in približno eno uro sem poskušal ugotoviti, zakaj. Če bi dejansko prebral kodo, ki sem jo prilepil, bi vedel.

To ni bilo za stranko za stranko, ne za sproščeno temo, tako da mi na srečo ni bilo treba spopadati s številnimi poizvedbami o podpori zaradi moja neumna napaka.

Kaj mislijo razvijalci komercialnih vtičnikov

Tu je citat Carla Hancocka (razvijalec Gravity Forms) na to temo:

Podpora priljubljenemu vtičniku Gravity Forms pomeni, da vidimo več kot pravičen delež slabo kodiranih tem. Ena od glavnih vprašanj v zvezi s podporo, ki jih srečujemo, so teme, ki niso razvite z najboljšimi praksami, kar ima za posledico težave pri oblikovanju Gravity Forms in v nekaterih primerih konflikte, zaradi katerih Gravity Forms ne delujejo pravilno.

Največji krivec v teh situacijah so teme, ki vključujejo odseke kode, kopirane-n-prilepljene s spletnih strani vadnic. Zdi se, da razvijalci teme menijo, da mora biti to dobro, ker je bil delček kode na spletnem mestu vadnice. Na žalost ni vedno tako in te slabe odločitve povzročijo glavobole in težave s podporo uporabnikom.

Želite omejiti možnost, da naletite na težave s vtičniki, ki jih povzroča slabo razvita tema? Držite se uglednih razvijalcev tem, kot so Press75, iThemes, Headway Themes, Organske teme, WooThemes in StudioPress. Bodite pozorni na tematske trge, kjer morda nimajo avtorjeve izkušnje in spretnosti. V večini primerov dobite tisto, za kar plačate.

Kodiranje najboljših praks

Mnogo teh vprašanj se je verjetno mogoče izogniti s sledenjem Standardi kodiranja WordPress. Na primer, morali bi biti predpona imena funkcij da bi se izognili morebitnim konfliktom.

V primeru težav s stili z Gravity Forms se boste morda želeli izogniti določenim slogom odeje na elementih obrazca in vnosov in namesto tega za večji del oblikovanja obrazcev uporabljati privzete izbirnike ID-ja WordPress..

Sem spadajo #searchform, #s, #searchsubmit v iskalno polje. Za obrazce za komentar pošljite tudi #commentform #author, #url, #email, #comment, #sl..

Zaključek

Če ste razvijalec teme in niste preveč dobro seznanjeni s PHP, bodite previdni pri kopiranju in lepljenju teh odrezkov kode v svojo temo. Tudi če niste najbolj odlični v PHP-ju, lahko vsaj preberete kodo in poskusite, da bi jo smiselno pred uporabo.

Če bi ugotovili, da vaše kratke kode ne delujejo pravilno, lahko vrstica kode, ki omenja “strip_shortcodes”, ima s tem nekaj povezave.

Včasih imam občutek, da razvijalci tem WordPress nalepijo naključne delčke v svojo funkcijo.php datoteko, tako da lahko na prodajne strani svoje teme navedejo še eno “funkcijo”.

Čeprav nisem velik oboževalec tovrstnih idej, se spopadam s povsem drugim argumentom o vlogi tem in vtičnikov na spletnih mestih WordPressa, ki ga bom shranil za prihodnjo objavo.

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