Tovább a tartalomhoz

Hibaelhárítás: űrlapok, e-mailek és hibakeresés

Konfliktusteszt, megakadó regisztrációs űrlap, Missing Payment ID hiba, nem működő jelszó-visszaállító link, elmaradó e-mailek és a hibakeresési mód.

Ez a fejezet azt mutatja meg, hogyan keresheted meg egy hiba okát: bővítmény- vagy sablonütközést, gyorsítótárat, e-mail-küldési gondot, és hogyan kapcsolhatod be a bővítmény hibakeresési naplóját.

A hibakeresési mód a Restrict → Settings → Misc fülön az Enable Debug Mode négyzettel kapcsolható be (Általános beállítások és e-mailek). Bekapcsolás után a Restrict → Tools oldalon megjelenik a Debugging fül. Innentől a bővítmény naplózza a fontos eseményeket: a bővítmény viselkedését, a fiókok módosításait és az e-mail-küldést. Ez segít kideríteni, mi történt egy hibás regisztráció vagy e-mail előtt. Hibakeresés után kapcsold vissza.

Hogyan keress bővítmény- vagy sablonütközést

Szekció neve “Hogyan keress bővítmény- vagy sablonütközést”

Ha egy funkció hibásan működik (törik az elrendezés, nem megy át az űrlap, hibát ad a szerkesztő), gyakran két bővítmény vagy a sablon ütközik. A teszt lényege, hogy kizárásos alapon megkeresed a hibás elemet.

  • Frissítsd a WordPress magot, a sablont és az összes bővítményt: sok hibát a frissítés megold.
  • Készíts teljes mentést az adatbázisról és a fájlokról.
  • Ha van, teszteléshez használj tesztkörnyezetet (staging), hogy a látogatók ne vegyenek észre semmit.
  • Ürítsd a böngésző gyorsítótárát és a szerveroldali gyorsítótárakat (oldal- és objektumgyorsítótár).
  1. Nyisd meg a Megjelenés → Sablonok oldalt.
  2. Ideiglenesen kapcsold be egy alap, módosítatlan WordPress-sablont (például a Twenty Twenty-Four-t).
  3. Ürítsd a böngésző gyorsítótárát, és próbáld újra a hibás műveletet. Ha a hiba megszűnt, a sablon okozza. Ha megmaradt, kapcsold vissza a saját sablonodat, és folytasd a bővítményekkel.
  1. Nyisd meg a Bővítmények → Telepített bővítmények oldalt.
  2. Jelöld ki az összes bővítményt, kivéve azt, amelyet tesztelsz (és amelyik a működéséhez kell).
  3. A tömeges műveleteknél válaszd a kikapcsolást, majd alkalmazd.
  4. Ürítsd a gyorsítótárat, és próbáld újra. Ha a hiba megszűnt, bővítményütközés van. Ha megmaradt, az ok inkább a szerverbeállításban, az adatbázisban vagy a WordPress beállításaiban keresendő.
  5. Kapcsold vissza a bővítményeket egyenként (vagy kisebb csoportokban), és minden bekapcsolás után próbáld újra.
  6. Amelyik bővítmény bekapcsolása után újra jelentkezik a hiba, az az ütközés oka.

Ha nincs tesztkörnyezeted, használhatod a Health Check & Troubleshooting bővítményt. A Eszközök → Webhely állapota → Hibaelhárítás üzemmódban csak a saját, bejelentkezett munkameneted számára kapcsol ki bővítményeket és vált sablont, a látogatók változatlanul az éles oldalt látják.

  • Sablonfelülírások. A gyermeksablon egyedi sablonfájljai a bővítmény frissítése után elavulhatnak. Nevezd át ideiglenesen a felülíró mappát (például tegyél a végére -bak szót), és nézd meg, hogy a régi sablonfájlok okozzák-e a hibát.
  • JavaScript-hibák. Nyisd meg a böngésző fejlesztői konzolját (F12 vagy Cmd + Option + I), és töltsd újra az oldalt. A piros hibák megmutatják az érintett szkriptet vagy függvényt.
  • 404-es oldalak. Frissítés vagy egyedi tartalomtípus módosítása után fordulhat elő. A Beállítások → Állandó hivatkozások oldalon kattints a módosítások mentésére, beállítás módosítása nélkül: ez frissíti az átírási szabályokat.
  • 403 Forbidden, REST API tiltás. Gyorsítótár-, biztonsági, tűzfal- vagy tagsági bővítmény blokkolhatja a REST API (/wp-json/) végpontjait. Ideiglenesen kapcsold ki a végpontok tiltását, vagy engedélyezd a REST API útvonalait.
  • Lassú betöltés. Gyakran nagy adatbázis-lekérdezések, indexelés nélküli adatok, sok átmeneti adat vagy lejárati dátum nélküli ismétlődő bejegyzések okozzák.

Ha ütközést találtál, mit gyűjts össze

Szekció neve “Ha ütközést találtál, mit gyűjts össze”

Ha a bővítmény és egy másik termék ütközik, a hibajelentéshez gyűjtsd össze az ütköző bővítmény vagy sablon pontos nevét és verzióját, a hiba lépésről lépésre leírt előidézését, és a webhely rendszerinformációit. Utóbbit a Restrict → Tools → System Info fülön, vagy az Eszközök → Webhely állapota → Infó oldalon találod.

A regisztrációs űrlap megakad, nem töltődik be

Szekció neve “A regisztrációs űrlap megakad, nem töltődik be”

Ha a regisztrációs űrlap nem töltődik be teljesen, vagy „beragad”, az szinte mindig egy másik bővítmény vagy a sablon hibája. Keresd meg az okot így:

  1. Bővítmények. Kapcsold ki ideiglenesen az összes bővítményt, kivéve a tagsági bővítményt. Próbáld ki az űrlapot. Ha működik, ütközés van: kapcsold vissza a bővítményeket egyenként, amíg az űrlap újra el nem romlik. Ha az űrlap az összes többi kikapcsolásával sem működik, hagyd őket kikapcsolva, és menj a sablonra.
  2. Egyedi módosítások. Ha módosítottad a regisztrációs űrlapot (Regisztrációs űrlap és egyéni mezők), vedd ki a módosításokat. Ha az űrlap így működik, a módosításban van a hiba. Az egyedi fejlesztés hibakeresése a te feladatod.
  3. Sablon. Ha az űrlapot nem módosítottad, kapcsold be ideiglenesen a WordPress alapsablonját. Ha így megy az űrlap, a sablon hibás: cserélj sablont, vagy kérd meg a sablon fejlesztőjét, hogy javítsa. Mondd meg neki, hogy a sablon megtöri a JavaScript és/vagy az AJAX működését.

Tipp: a böngésző fejlesztői konzoljában általában látszanak a sablon JavaScript-hibái. Bármelyik JavaScript-hiba megtörheti a regisztrációs űrlapot és az oldal más funkcióit is. Ha a konzolban a sablonhoz kapcsolódó hibákat látsz, jelezd a sablon fejlesztőjének.

„Missing Payment ID” hiba regisztrációkor

Szekció neve “„Missing Payment ID” hiba regisztrációkor”

A Missing Payment ID hiba általában JavaScript-hibát jelez, amit többnyire egy másik bővítmény vagy a sablon ütközése okoz. A keresés ugyanaz, mint a megakadó űrlapnál:

  1. Kapcsold ki az összes bővítményt a tagsági bővítmény kivételével, és próbáld ki a regisztrációt. Ha megy, kapcsold vissza őket egyenként, amíg a hiba vissza nem tér.
  2. Ha az űrlapot módosítottad, vedd ki a módosításokat. Ha így működik, a módosítással van a baj.
  3. Ha nem módosítottad, kapcsold be a WordPress alapsablonját. Ha így működik, a sablon hibás, és a fejlesztőjének kell javítania.
  4. Nézd meg a böngésző fejlesztői konzolját: a sablonhoz kapcsolódó JavaScript-hibákat jelezd a sablon fejlesztőjének.

A jelszó-visszaállító linkek nem működnek

Szekció neve “A jelszó-visszaállító linkek nem működnek”

Egyes tárhelyek és gyorsítótár-bővítmények (például WP Super Cache, W3 Total Cache) agresszívan gyorsítótároznak, és ez tönkreteheti a jelszó-visszaállító linkeket. A megoldás, hogy a belépési oldalt kizárod a gyorsítótárból. Ha a gyorsítótárnak van süti-fehérlistája, a jelszó-visszaállítás sütijét is fel kell venned rá.

A belépési oldalt a Restrict → Settings → Misc fülön adhatod meg.

Kérd meg a tárhelyszolgáltatót, hogy a belépési oldal címét tegye a gyorsítótár kivételei közé. A kérésben a saját oldalad belépési oldalának teljes URL-jét add meg, és írd le, hogy a jelszó-visszaállító linkek nem működnek.

A link feldolgozásakor a bővítmény sütit állít be. Ennek a neve:

'rcp-resetpass-' . COOKIEHASH

Ha a tárhely gyorsítótára süti-fehérlistát használ, ezt a sütit fel kell venni rá. A süti nevét az rcp_resetpass_cookie_name szűrővel módosíthatod:

function sajat_rcp_resetpass_cookie_name( $cookie_name ) {
return 'sajat-suti-nev';
}
add_filter( 'rcp_resetpass_cookie_name', 'sajat_rcp_resetpass_cookie_name' );

Ha a szervered Varnish gyorsítótárat használ, a konfigurációban ki kell hagyni a belépési és az admin oldalakat:

# Do not cache the admin and login pages
if (req.url ~ "/wp-(login|admin)" || req.url ~ "/login")
return (pass);
}

A bővítménynek a sütit is be kell tudnia állítania. Ha a konfigurációd a Set-Cookie fejlécet törli, add hozzá az rcp- előtagú sütik kivételét:

if (beresp.http.Set-Cookie && bereq.url !~ "^/wp-(login|admin)" && beresp.http.Set-Cookie !~ "comment_" && $.http.Set-Cookie !~ "rcp-") {
unset beresp.http.Set-Cookie;
}

Ha a tárhelyed felületen kezeli a Varnish-konfigurációt, a fehérlistán az rcp-* előtagú sütiket kell engedélyezned (helyettesítő karakterrel).

Minden gyorsítótár-bővítmény más, a kizárás a bővítmény beállításaiban található. A legtöbb lehetővé teszi egyes oldalak kizárását: vedd ki a gyorsítótárból azt az oldalt, amelyen a [login_form] rövidkód van. A következő bővítményekről ismert, hogy kizárás nélkül gondot okoznak: WordFence, W3 Total Cache, WP Rocket, WP Super Cache.

A bővítmény e-mailt küld a tagoknak és az adminisztrátoroknak bizonyos eseményeknél (például új regisztrációnál). Ha nem érkeznek meg, haladj végig ezeken a lépéseken.

  1. A tag állapota. A regisztrációs e-maileket a bővítmény akkor küldi, amikor a tag fiókja Active állapotra vált. Ha a tagok nem lesznek automatikusan aktívak, előbb azt javítsd: lásd A tagok függőben maradnak.
  2. E-mail-beállítások. Nyisd meg a Restrict → Settings → Emails fület, és keresd meg az érintett e-mail-sablont (például a fizetős regisztrációhoz az aktív előfizetés e-mailjét, az ingyenes regisztrációhoz az ingyenes tagság e-mailjét). Ellenőrizd, hogy a letiltás négyzete nincs bejelölve, hogy a tárgy ki van töltve, és hogy az üzenet szövege ki van töltve. Ha a tárgy vagy a szöveg üres, az e-mail nem megy ki. A beállítások leírása: Általános beállítások és e-mailek.
  3. Elindul-e az e-mail-küldés? Telepítheted a WP Mail Logging bővítményt, amely naplózza a kimenő leveleket. Ha az e-mail nem szerepel a naplóban, a küldés nem indul el. Ha szerepel, az e-mail kiment, csak nem érkezett meg: lépj a 4. lépésre. A bővítmény saját hibakeresési naplója is segít (Hibakeresési mód).
  4. Küldés SMTP-szerveren át. Ha az e-mail kimegy, de nem érkezik meg, a szerver levélküldése a gond. A legegyszerűbb megoldás egy külön SMTP-szerver használata. Ha van saját SMTP-szervered, a tárhelyed ad egyet (a legtöbb ad), vagy Gmailen át küldenél, a Configure SMTP vagy a WP Mail SMTP bővítménnyel beállíthatod, hogy a WordPress a külső levelezőszerveren át küldjön. Ha nincs SMTP-szervered, vagy nem tudod beállítani, kérj segítséget a tárhelyszolgáltatótól. Másik lehetőség egy tranzakciós levélküldő szolgáltatás (például Mailgun vagy SendGrid).

Készült:

Tiszteletben tartjuk a magánszférádat

Sütiket használunk a böngészési élmény javítására és a forgalom elemzésére. Az analitika csak akkor indul, ha engeded. Adatvédelmi irányelvek, Sütitájékoztató.

Sütibeállítások