Da li vi pravite greške? Ja ih pravim i svi ih pravimo, ko radi taj i greši. Prvi korak u ispravljanju svih grešaka je saznanje koji je uzrok tih grešaka. Ne možemo vam pomoći u rešavanju svih problema, ali ukoliko je uzrok greške php kod na WordPress sajtu, daćemo vam nekoliko instrukcija kako da koristite debager i uz pomoć njega, detektujete i rešavate probleme.

U jednom od prethodnih tekstova dali smo nekoliko uputstva za rešavanje problema sa greškom 500.  Jedan od koraka koji se koristi u rešavanju ovog problema je debagovanje. Deo procesa debagovanja je oktrivanje uzroka greške i rešavanje iste. WP_DEBUG je jako bitan alat, koji nam može pomoći u samom razvoju. Tokom procesa razvoja WordPress sajta, susretaćemo se sa greškama, upozorenjima, neke od njih je teško izbeći, a nekih od njih nećemo ni biti svesni. Sve u svemu, ono što želimo je da sajt radi i da do korisnika ne dolaze nikakve greške.

Iz više razloga, jako je važno da je Wp_debug uključen i da se koristi. Takođe, korisno je da imamo u evidenciji zapisane sve greške sa kojima smo se sreli tokom procesa razvoja sajta, jer, nekad nećemo moći da pronađemo logiku u trenutku prvog pojavljivanja greške, ali ćemo, uz adekvatno dokumentovanje iste, pronaći zakonitost njenog pojavljivanja u toku daljeg razvoja.

 

Podešavanje

Za ovaj korak potrebno je da se malo bolje upoznate sa wp-config.php fajlom. Za uključenje debagera, pronalaženje grešaka i rad u njemu nam trebaju sledeće linije koda iz wp-config.php fajla:

 

izrada-web-sajta-debuger2

Da se razumemo – uključivanje debagera vam neće sprečiti grešku. Samo će vam pokazati uzrok greške, umesto što bi vam se pokazao najobičniji beli ekran.

 

Tumačenje i čitanje debug-loga

Kada vam se pojavi greška, informacija o njoj će vam se automatski sačuvati u fajl debug.log koji će se nalaziti u direktorijumu pod imenom “content”. Jedini način da vidite i pročitate informacije o grešci je da tom fajlu pristupite direktno. Ovo nije naročito dobar i pregledan način za rad, naročito ako pristupate udaljenom serveru. Postoje i plugin-ovi koji olakšavaju rad sa debug logom, kojima ćemo posvetiti pažnju u nastavku teksta.

Postoji mnogo načina za rad sa debug-logom. Jedan od njih je plugin Log Viewer. Ovaj plugin nam da je mogućnost, čitanja i brisanja debug-loga. Kada je plugin aktivan, debug-logu možete pristupiti iz administratorskog menija (Tools paleta). Drugi plugin je Debug Bar. On je jedan od najmoćnijih alata za WordPress. Međutim, ne preporučujemo vam korišćenje ovog plugina, ukoliko radite na live-sajtu.

 

Na slici ispod ćemo vam prikazati kako izgleda debug log.

 

izrada-web-sajta-debuger3

Kao što možete videti svaki put kada WordPress izbaci grešku ili upozorenje, takođe izbacuje i komentar.

 

Dodavanje drugih informacija u log

U nekim situacijama, biće neophodno da pišete neke informacije u log, čak i ukoliko nisu greške. Php ima funkciju zvanu error_log, koja na osnovu greške, štampa informaciju o grešci, ali u formatu koji nije prikladan i razumljiv. Preporučujemo vam dodavanje PHP funkcije, koja će učiniti ovu informaciju čitljivijom i preglednijom. Ona koristi print_r() naredbu, da bi formatirala nizove i objekte, pre zapisivanja u log.

 

izrada-web-sajta-debuger4

 

Međutim, umesto dodavanja ove funkcije u temu, praktičniji primer bi bio razvijanje sopstvenog plugina. U slučaja dodavanja ove funkcije u temu, ona će biti beskorisna u slučaju da upotrebimo drugu temu, što za plugin nije slučaj. Kreiranje plugina nije teško – u direktorijum sa pluginovima se napravi fajl, doda se plugin – header i iskopira se ova funkcija.

Dodavanje headera je jednostavno i na donjoj slici ćemo vam ga prikazati.

 

izrada-web-sajta-debuger5

Kada napravite ovu funkciju, možete je upotrebljavati na više načina. Jedan os njih je:

 

izrada-web-sajta-debuger6

Plugin možete koristiti i u specifičnim slučajevima kao kada želite da pročitate koji korisnici su se logovali na sajt ili pustili komentar. Navešćemo vam primer funkcije koju možete upotrebiti:

 

 

izrada-web-sajta-debuger7

 

Ovva funkcija nema sličnosti sa Google Analytics-om, ali svakako dodaje samom postu malo inteligencije. Najvažnije je, da u njoj post ID vrednost bude pravilo postavljena ($post_to_track).

Nadamo se da smo vam ovim i prošlim tekstom malo pomogli da sami pronađete greške na sajtu i da rešavate neke od najčešćih problema koji se mogu javiti. Napomenućemo da ne postoje samo PHP greške, već postoje i Java Script greške koje se mogu videti pristupanjem konzoli u pretraživaču.