WP Rocket okozta hibák
A WP Rocket oldalgyorsítótára és fájloptimalizálása miatti űrlaphibák felismerése és megoldása.
A WP Rocket oldalgyorsítótárat és JavaScript-, CSS-optimalizálást kombinál. Az oldalgyorsítótár ritkán rontja el magától a nyilvános űrlapot, ha az élettartama a WordPress nonce-ablaka (12 és 24 óra) alatt marad; a WP Rocket alapértéke 10 óra. A hibát általában a File Optimization lap optimalizálási funkciói okozzák.
Tünetek
Szekció neve “Tünetek”- A feltételes logika vagy más JavaScriptes funkció nem reagál.
- Az egész űrlap hiányzik betöltéskor. A feltételes logikás űrlapot
display:nonestílussal nyomtatja ki az oldal, és csak az indító szkript futása után jelenik meg. - A mezők hibásan jelennek meg, vagy beküldés után üres képernyő látszik, a visszaigazolás stílus nélkül.
- Az űrlap (a fájlfeltöltéssel együtt) nem küldhető be, és ezt írja: „Your session has expired. Please refresh the page and try again.”
- A Mentés és folytatás, a Conversational Forms, az aláírás vagy más kiegészítő váratlanul viselkedik vagy megszakad.
- Az űrlap a bejelentkezett felhasználóknak működik, a nyilvános látogatóknak nem.
- Ugyanaz az űrlap és ugyanazok a WP Rocket-beállítások az egyik webhelyen működnek, a másikon nem.
Mi okozza
Szekció neve “Mi okozza”Delay JavaScript Execution
Szekció neve “Delay JavaScript Execution”Visszatartja a szkripteket, amíg a látogató nem csinál valamit az oldalon. Nem minden szkriptet késleltet: a WP Rocket automatikus listája a Gravity Forms feltételes logikáját és a reCAPTCHA szkriptjeit eleve kizárja. Ha viszont más Gravity Forms-szkripteket késleltet, a jQuery-t viszont nem, a feltételes logika nem fut le. A JavaScripttel épített mezők (dátumválasztó, fájlfeltöltés, aláírás, szövegszerkesztő) is inicializálatlanok maradnak, amíg a látogató nem lép az oldallal kapcsolatba.
Hol találod: WP Rocket › File Optimization.
Remove Unused CSS
Szekció neve “Remove Unused CSS”Átvizsgálja az oldalt, és csak azt a CSS-t tartja meg, amelyet a betöltött HTML-ben lévő elemek használnak. A még nem látható elemek (érvényesítési hibák, visszaigazoló üzenet, megnyitott dátumválasztó, bővített legördülő) stílusai így kieshetnek.
Hol találod: WP Rocket › File Optimization › Optimize CSS delivery.
JavaScript összevonása, minifikálása és halasztása
Szekció neve “JavaScript összevonása, minifikálása és halasztása”A Minify JavaScript Files kihagyja az már minifikált szkripteket, és a Gravity Forms szkriptjei ilyenek. A Combine JavaScript Files egyetlen fájlba vonja a szkripteket, ami megváltoztathatja a futtatási sorrendet, bár a Delay JavaScript Execution bekapcsolt állapotában automatikusan kikapcsol. A Load JavaScript Deferred szintén módosíthatja, mikor futnak a szkriptek az oldal többi részéhez képest.
Hol találod: WP Rocket › File Optimization.
Oldalgyorsítótár
Szekció neve “Oldalgyorsítótár”A kijelentkezett látogatóknak mentett másolatot ad. Az AJAX-os és fájlfeltöltéses beküldés az oldalba ágyazott biztonsági tokenre épül, ezért ha a gyorsítótárazott másolat annyira régi, hogy a token lejárt, a beküldés ezzel a hibával áll meg: „Your session has expired. Please refresh the page and try again.”
Hol találod: WP Rocket › Advanced Rules › Never Cache URL(s).
A WP Rocket időnként frissíti azoknak a szkripteknek a listáját, amelyeket kompatibilisnek vagy inkompatibilisnek tekint ezekkel a funkciókkal. Két azonos beállítású webhely másképp viselkedhet, ha a listáik nincsenek szinkronban: frissítsd őket az Update Lists gombbal a Tools lapon.
A hiba megerősítése
Szekció neve “A hiba megerősítése”- Tedd az oldal URL-je végére a
?nowprocket=1paramétert, és töltsd be. Ez megkerüli a WP Rocket optimalizálásait. Ha az űrlap itt működik, a szokásos URL-en viszont nem, a WP Rocket érintett. - Nyisd meg a böngésző konzolját, és töltsd újra az űrlapoldalt. Bármelyik hiba, amely egy Gravity Forms függvényt nevez meg, olyan szkriptre utal, amely nem töltődött be időben.
- Nézd meg az oldal forrását, és keresd a
rocketlazyloadscriptszöveget. Ha előfordul, a Delay JavaScript Execution aktív az oldalon. - Keresd a forrásban a
wpr-usedcssszöveget. Ha előfordul, a Remove Unused CSS aktív az oldalon.
A hiba elhárítása
Szekció neve “A hiba elhárítása”- Ürítsd a gyorsítótárat és a Used CSS-t a WP Rocket eszköztármenüjéből, majd töltsd újra az űrlapoldalt.
- Ha a feltételes logika hibás, a WP Rocket › File Optimization lapon a Delay JavaScript Execution alatti Excluded JavaScript Files listához add hozzá a
/gravityforms/útvonalat. - Ha hiányzik a stílus, az Optimize CSS delivery alatti CSS Safelist listához add hozzá a Gravity Forms stíluslapjait és a
.gform_wrapperosztályt, majd ürítsd újra a Used CSS-t. - Ha egy AJAX-os űrlap lefagy vagy újratölt, add hozzá az oldalt a WP Rocket › Advanced Rules alatti Never Cache URL(s) listához.
- Ha a gond megmarad, kapcsold ki egyesével a File Optimization funkcióit, és minden után próbáld újra az űrlapot, ne az egész lapot kapcsold ki egyszerre.
Az általános leírást lásd a gyorsítótár és szkriptoptimalizáló fejezetében.
A külső bővítményeket csak javaslatként említjük: nem teszteljük és nem támogatjuk őket, ezért a megfelelőségükről neked kell meggyőződnöd.
Készült: