{"id":230746,"date":"2022-12-03T13:30:00","date_gmt":"2022-12-03T10:30:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=230746"},"modified":"2022-12-03T18:39:48","modified_gmt":"2022-12-03T15:39:48","slug":"natiivit-wordpress-virheenkorjaustyoekalut-jotka-eivaet-vaadi-ide-tae","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/fi\/natiivit-wordpress-virheenkorjaustyoekalut-jotka-eivaet-vaadi-ide-tae\/","title":{"rendered":"Natiivit WordPress-virheenkorjausty\u00f6kalut, jotka eiv\u00e4t vaadi IDE:t\u00e4"},"content":{"rendered":"\n<p>Jos olet juuri sattunut liittym\u00e4\u00e4n sivuston <strong><a href=\"https:\/\/tommcfarlin.com\/members-only-content\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">j\u00e4senyyteen<\/a><\/strong> ja etsit sis\u00e4lt\u00f6\u00e4 nimenomaan <strong><a href=\"https:\/\/tommcfarlin.com\/tag\/the-independent-wordpress-developer\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">The Independent WordPress Developer -kehitt\u00e4j\u00e4lle<\/a><\/strong>, suosittelen lukemaan <strong><a href=\"https:\/\/wordpress.mediadoma.com\/fi\/wordpressin-asentaminen-paikallista-kehitystae-varten\/\" title=\"edellisen viestin\">edellisen viestin<\/a><\/strong> \u2013 ainakin \u2013 valmistautuaksesi t\u00e4m\u00e4n viestin sis\u00e4lt\u00f6\u00f6n.<\/p>\n<p>Jos kuitenkin haluat lukea edellisen artikkelin, t\u00e4ss\u00e4 on lyhyt luettelo kaikesta t\u00e4h\u00e4n menness\u00e4 kirjoitetusta:<\/p>\n<ol>\n<li><strong><a href=\"https:\/\/tommcfarlin.com\/local-development-for-the-indie-wordpress-developer\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Paikallinen kehitys indie WordPress -kehitt\u00e4j\u00e4lle<\/a><\/strong><\/li>\n<li><a href=\"https:\/\/tommcfarlin.com\/databases-and-tools-indie-wordpress-developer\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Tietokannat ja ty\u00f6kalut indie WordPress -kehitt\u00e4j\u00e4lle<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.mediadoma.com\/fi\/wordpressin-asentaminen-paikallista-kehitystae-varten\/\" title=\"WordPressin asentaminen paikallista kehityst\u00e4 varten\">WordPressin asentaminen paikallista kehityst\u00e4 varten<\/a><\/li>\n<\/ol>\n<p>Kun valmistaudumme puhumaan edistyneemmist\u00e4 aiheista, kuten virheenkorjauksesta ja IDE:ist\u00e4, on ensinn\u00e4kin syyt\u00e4 huomioida ty\u00f6kalut, joita meill\u00e4 on k\u00e4ytett\u00e4viss\u00e4mme oleviin ty\u00f6kaluihin, jotka voimme asentaa WordPressiin ja jotka auttavat meit\u00e4 virheenkorjausongelmissa kehityksen aikana.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163128-61e74ae7f1644.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163128-61e74ae7f1644.png\" alt=\"Natiivit WordPress-virheenkorjausty\u00f6kalut, jotka eiv\u00e4t vaadi IDE:t\u00e4\"><\/a><\/p>\n<p>Lis\u00e4ksi n\u00e4m\u00e4 ongelmat eiv\u00e4t liity pelk\u00e4st\u00e4\u00e4n PHP-ongelmiin. N\u00e4ihin sis\u00e4ltyy my\u00f6s JavaScript-ongelmia. Ja viel\u00e4 askeleen pidemm\u00e4lle, on olemassa tapoja, joilla voimme m\u00e4\u00e4ritt\u00e4\u00e4 WordPressin alkuper\u00e4isesti niin, ett\u00e4 se tulostaa virheet suoraan selaimeemme.<\/p>\n<p>Joten ennen kuin tarkastelemme virhelokeja, IDE:it\u00e4, Xdebugia ja niin edelleen, katsomme, mit\u00e4 voimme tehd\u00e4 itse WordPressiss\u00e4.<\/p>\n<h2>Natiivit WordPress-virheenkorjausty\u00f6kalut<\/h2>\n<p>WordPressin alkuper\u00e4iset virheenkorjausty\u00f6kalut ovat kahden asian yhdistelm\u00e4:<\/p>\n<ol>\n<li>valinnat, jotka voimme asettaa WordPress-m\u00e4\u00e4ritystiedostoon ja joiden avulla voimme n\u00e4hd\u00e4 n\u00e4yt\u00f6lle kirjoitetut tiedot,<\/li>\n<li>useita laajennuksia, jotka auttavat meit\u00e4 ty\u00f6skentelem\u00e4\u00e4n PHP- ja JavaScript-tiedostojen kanssa WordPressin hallinta-alueella<\/li>\n<\/ol>\n<p>Yll\u00e4 olevan toisen kohdan osalta haluan tehd\u00e4 selv\u00e4ksi, ett\u00e4 t\u00e4llaisia \u200b\u200bvarten on olemassa paljon saatavilla olevia laajennuksia; Haluan kuitenkin pit\u00e4\u00e4 asennuksen mahdollisimman v\u00e4h\u00e4rasvaisena, jotta emme tulvii liikaa tietoa.<\/p>\n<p>Sen sijaan haluan, ett\u00e4 meill\u00e4 on tiedot, joita tarvitsemme ty\u00f6mme testaamiseen ja arvioimiseen, mutta meill\u00e4 on vain se, mit\u00e4 tarvitsemme. Ainakin toistaiseksi. Ehk\u00e4 puhumme edistyneist\u00e4 aiheista tulevissa viesteiss\u00e4.<\/p>\n<p>T\u00e4m\u00e4n sanottuaan aloitetaan.<\/p>\n<h3>WordPress-kokoonpano<\/h3>\n<p>Ennen kuin huolehdit m\u00e4\u00e4rityksist\u00e4, WordPress itse tarjoaa joitain erilaisia \u200b\u200bvaihtoehtoja, jotka voimme m\u00e4\u00e4ritt\u00e4\u00e4 <code>wp-config.php<\/code>tiedostossa. N\u00e4m\u00e4 ovat hyvin dokumentoituja Codexissa, mutta tied\u00e4n muiden s\u00e4hk\u00f6postien kokemuksesta, ett\u00e4 tietoja voi olla hieman vaikea seuloa.<\/p>\n<p>Ensinn\u00e4kin on t\u00e4rke\u00e4\u00e4 huomata seuraavat asiat (kuten lainataan WordPress Codexista):<\/p>\n<blockquote>\n<p><a href=\"\/\/codex.wordpress.org\/WP_DEBUG)\" class=\"external external_icon\" rel=\"nofollow\" target=\"_blank\">WP_DEBUG<\/a> on PHP-vakio (pysyv\u00e4 globaali muuttuja), jota voidaan k\u00e4ytt\u00e4\u00e4 &quot;debug&quot;-tilan k\u00e4ynnist\u00e4miseen koko WordPressiss\u00e4. Sen oletetaan olevan oletusarvoisesti ep\u00e4tosi, ja se asetetaan yleens\u00e4 arvoon tosi <a href=\"https:\/\/codex.wordpress.org\/Editing_wp-config.php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">wp-config.php-<\/a> tiedostossa WordPressin kehityskopioissa.<\/p>\n<\/blockquote>\n<p>T\u00e4m\u00e4 edellytt\u00e4\u00e4, ett\u00e4 ymm\u00e4rr\u00e4t PHP-vakiot. Jos ei, katso k\u00e4ytt\u00f6ohje <strong><a href=\"https:\/\/secure.php.net\/manual\/en\/language.constants.php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">t\u00e4\u00e4lt\u00e4<\/a><\/strong> (se on melko suoraviivaista). Sen lyhennettyn\u00e4 on seuraava:<\/p>\n<blockquote>\n<p>Vakio on yksinkertaisen arvon tunniste (nimi).<\/p>\n<\/blockquote>\n<p>Joten aion tehd\u00e4 kaikkeni tarjotakseni m\u00e4\u00e4ritysvaihtoehdot mahdollisimman tislaamaan sit\u00e4.<\/p>\n<p>Ensin <code>wp-config.php<\/code>tiedostossa haluat muuttaa rivi\u00e4 <strong><a href=\"https:\/\/gist.github.com\/tommcfarlin\/426e02bcfc411d43be6715b3e84ead7e#file-09-wp-config-original-php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">, jossa lukee:<\/a><\/strong><\/p>\n<pre><code>&lt;?php\ndefine( 'WP_DEBUG', false );<\/code><\/pre>\n<p><strong><a href=\"https:\/\/gist.github.com\/tommcfarlin\/426e02bcfc411d43be6715b3e84ead7e#file-10-wp-config-debug-php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">T\u00e4h\u00e4n<\/a><\/strong> :<\/p>\n<pre><code>&lt;?php\ndefine( 'WP_DEBUG', true );<\/code><\/pre>\n<p>Siin\u00e4 ei kuitenkaan viel\u00e4 kaikki. On viel\u00e4 muutama lis\u00e4tt\u00e4v\u00e4 asia, jotka parantavat virheenkorjauskokemusta:<\/p>\n<pre><code>&lt;?php\ndefine( 'WP_DEBUG', true );\ndefine( 'WP_DEBUG_LOG', true );\ndefine( 'WP_DEBUG_DISPLAY', true );\n@ini_set( 'display_errors', 1 );\ndefine( 'SCRIPT_DEBUG', true );\ndefine( 'SAVEQUERIES', true );<\/code><\/pre>\n<p>Jos seuraat artikkelia Mutta mit\u00e4 kukin rivi tarkoittaa? T\u00e4ss\u00e4 on niin ytimek\u00e4s selitys kuin voin nyt antaa:<\/p>\n<ul>\n<li><strong>WP_DEBUG<\/strong>. T\u00e4m\u00e4 n\u00e4ytt\u00e4\u00e4 kaikki virheet ja varoitukset, jotka PHP antaa WordPressi\u00e4 k\u00e4ytett\u00e4ess\u00e4. Itse sovelluksen suorittamisen ei pit\u00e4isi aiheuttaa ongelmia; sen k\u00e4ytt\u00e4minen eri lis\u00e4osien kanssa voi kuitenkin olla erilainen laajennuksen laadusta riippuen.<\/li>\n<li><strong>WP_DEBUG_LOG<\/strong>. T\u00e4m\u00e4 on yksi suosikkivakioistani, ja se kirjoittaa kaikki tulosteet lokiin yksityiskohtaisesti. Aion k\u00e4sitell\u00e4 t\u00e4t\u00e4 tulevassa postauksessa, mutta toistaiseksi tied\u00e4, ett\u00e4 t\u00e4m\u00e4 on jotain, joka mielest\u00e4ni tulisi aina asettaa <strong><a href=\"https:\/\/wordpress.mediadoma.com\/fi\/wordpressin-asentaminen-paikallista-kehitystae-varten\/\" title=\"kehitysymp\u00e4rist\u00f6\u00f6si.\">kehitysymp\u00e4rist\u00f6\u00f6si.<\/a><\/strong><\/li>\n<li><strong>WP_DEBUG_DISPLAY<\/strong>. T\u00e4m\u00e4 on arvo, jonka voit asettaa tosi tai ep\u00e4tosi (vaikka pid\u00e4n parempana tosi). Se t\u00e4ydent\u00e4\u00e4 edellist\u00e4 asetusta sallimalla sinun n\u00e4hd\u00e4 selaimessa viestit, jotka on my\u00f6s kirjoitettu blogiin. En tied\u00e4, onko t\u00e4st\u00e4 sinulle hy\u00f6ty\u00e4 vai ei. Jos et ole valmis k\u00e4ym\u00e4\u00e4n l\u00e4pi pinoj\u00e4ljityst\u00e4 ja tarkempia tietoja, sinun kannattaa harkita t\u00e4m\u00e4n arvon m\u00e4\u00e4ritt\u00e4mist\u00e4 tosi.<\/li>\n<li><strong>dislay_errors.<\/strong> Codex mainitsee, ett\u00e4 voit asettaa t\u00e4m\u00e4n arvoksi ep\u00e4tosi, mutta mielest\u00e4ni se pit\u00e4isi asettaa arvoon tosi, jotta virheet ja varoitukset otetaan k\u00e4ytt\u00f6\u00f6n.<\/li>\n<li><strong>SCRIPT_DEBUG<\/strong>. WordPress-ydin k\u00e4ytt\u00e4\u00e4 minimoituja versioita CSS- ja JavaScript-tiedostoista. Kun poistat t\u00e4m\u00e4n asetuksen k\u00e4yt\u00f6st\u00e4, voit tarkastella tiedostojen kaikkea sis\u00e4lt\u00f6\u00e4 alkuper\u00e4isess\u00e4 muodossaan. T\u00e4m\u00e4 on erityisen hy\u00f6dyllist\u00e4, jos aiot osallistua Coreen tai ty\u00f6skentelem\u00e4\u00e4n Coreen sis\u00e4ltyv\u00e4n JavaScriptin parissa.<\/li>\n<li><strong>S\u00c4\u00c4ST\u00d6T<\/strong>. T\u00e4m\u00e4 on mielest\u00e4ni hieman edistyneempi asetus. Lyhyesti sanottuna se ottaa kaikki tietokantaa vastaan \u200b\u200bajettavat kyselyt ja tallentaa ne PHP-taulukkoon, jonka voit my\u00f6hemmin analysoida. Se<\/li>\n<\/ul>\n<p>Nyt kun olemme k\u00e4sitelleet WordPress-m\u00e4\u00e4ritykset, ent\u00e4 laajennukset?<\/p>\n<h3>Plugins virheenkorjausta varten<\/h3>\n<p>Kun sanon, ett\u00e4 arkisto on t\u00e4ynn\u00e4 laajennuksia t\u00e4t\u00e4 varten, tarkoitan sit\u00e4. Itse asiassa, jos olet uusi WordPress-kehityksess\u00e4, en suosittele etsim\u00e4\u00e4n asennettavia asioita.<\/p>\n<p>Siit\u00e4 voi nopeasti tulla ylivoimainen, vaarana on, ett\u00e4 et ymm\u00e4rr\u00e4, mit\u00e4 jotkut heist\u00e4 tekev\u00e4t, ja saattaa johtaa sinut polulle, jolle p\u00e4\u00e4dyt asennuksen puuhastukseen.<\/p>\n<p>Sen sijaan suosittelen tutustumaan seuraaviin laajennuksiin (lukemaan tietysti ensin niiden kuvaus) ja jatkamaan sitten sielt\u00e4:<\/p>\n<ol>\n<li><strong><a href=\"https:\/\/wordpress.org\/plugins\/debug-bar\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Debug Bar<\/a><\/strong>. Pelk\u00e4st\u00e4\u00e4n t\u00e4m\u00e4 laajennus lis\u00e4\u00e4 hallintapalkkiin valikon, jonka avulla n\u00e4et kyselyn, v\u00e4limuistin ja muut tiedot. Se vaatii, ett\u00e4 WP_DEBUG ja SAVEQUERIES ovat k\u00e4yt\u00f6ss\u00e4 yll\u00e4 kuvatulla tavalla.<\/li>\n<li><strong><a href=\"https:\/\/wordpress.org\/plugins\/debug-bar-list-dependencies\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Virheenkorjauspalkkiluettelon komentosarja- ja tyyliriippuvuudet<\/a><\/strong>. T\u00e4m\u00e4 on lis\u00e4osa yll\u00e4 olevaan laajennukseen, jonka avulla voit korjata muita JavaScript- ja CSS-tyylej\u00e4, jotka toimivat WordPressin yhteydess\u00e4.<\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/debug-bar-console\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Debug Bar Console<\/a>. T\u00e4t\u00e4 laajennusta sinun tulee k\u00e4ytt\u00e4\u00e4 ep\u00e4r\u00f6im\u00e4tt\u00e4. Ainakin sen avulla voit suorittaa PHP:n ja MySQL:n itse WordPressist\u00e4. En suosittele t\u00e4t\u00e4 laajennusta, ellet ole eritt\u00e4in tyytyv\u00e4inen jompaankumpaan n\u00e4ist\u00e4 kahdesta kielest\u00e4. Silti, jos olet, t\u00e4m\u00e4 voi olla tehokas funktion tai kyselyn prototyyppi\u00e4 ennen sen rakentamista laajennukseen.<\/li>\n<\/ol>\n<h2>Virhelokien tutkiminen<\/h2>\n<p>Seuraavassa viestiss\u00e4 alamme tarkastella, mit\u00e4 tarvitaan WordPressin luoman virhelokin tutkimiseen ja kuinka ymm\u00e4rt\u00e4\u00e4 n\u00e4kem\u00e4mme tiedot.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163128-61e74aee547cd.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163128-61e74aee547cd.png\" alt=\"Natiivit WordPress-virheenkorjausty\u00f6kalut, jotka eiv\u00e4t vaadi IDE:t\u00e4\"><\/a><\/p>\n<p>Lis\u00e4ksi aiomme tutkia, mit\u00e4 tarvitaan t\u00e4ss\u00e4 viestiss\u00e4 kuvattujen laajennusten k\u00e4ytt\u00e4miseen. Sen j\u00e4lkeen siirrymme entist\u00e4 edistyneemp\u00e4\u00e4n ty\u00f6kaluun.<\/p>\n<p>Mutta askel kerrallaan, eik\u00f6 niin?<\/p>\n<p>M\u00e4\u00e4rit\u00e4 kuitenkin toistaiseksi asennuksesi yll\u00e4 kuvatulla tavalla, asenna linkitetyt laajennukset ja tee sitten kaikkesi tutkiaksesi, miten ne toimivat, mit\u00e4 saatat n\u00e4hd\u00e4 n\u00e4yt\u00f6ll\u00e4 ja miten t\u00e4m\u00e4 voi vaikuttaa ja hy\u00f6dytt\u00e4\u00e4 kehityst\u00e4si.<\/p>\n<p>Kyll\u00e4, siell\u00e4 voi olla v\u00e4h\u00e4n oppimisk\u00e4yr\u00e4\u00e4. Mutta siksi edet\u00e4\u00e4n hitaasti. Opittavaa on paljon, ja meill\u00e4 on runsaasti aikaa kattaa kaikki tarvittava maa.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ennen kuin tarkastelemme virhelokeja, IDE:it\u00e4, Xdebugia ja niin edelleen, katsomme, mit\u00e4 voimme tehd\u00e4 alkuper\u00e4isill\u00e4 WordPress-virheenkorjausty\u00f6kaluilla.<\/p>\n","protected":false},"author":1,"featured_media":163129,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[719,895,864],"tags":[1166],"class_list":["post-230746","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-kehittaejae","category-koodi","category-wordpress-5","tag-affiai-fi"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts\/230746","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/comments?post=230746"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts\/230746\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/media\/163129"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/media?parent=230746"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/categories?post=230746"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/tags?post=230746"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}