Prejsť na obsah

Nastavenia súborov cookie

Vyberte, aké druhy súborov cookie povolíte. Svoj výber môžete kedykoľvek zmeniť cez Nastavenia súborov cookie v dolnej časti každej stránky. Vyhlásenie o ochrane osobných údajov

Nevyhnutné

Vždy zapnuté

Potrebné na prihlásenie, uchovanie košíka a zapamätanie vašich volieb. Sú vždy zapnuté.

Ktoré súbory cookie?
  • weboke_sessie, weboke_klant, weboke_remember: vaša relácia a trvalé prihlásenie
  • weboke_basket: váš košík
  • wkBtwIncl: zobrazovanie cien s DPH alebo bez DPH
  • wok_cookies: váš výber súborov cookie, 12 mesiacov

Merajú, ktorá reklama vedie k návšteve alebo objednávke, aby sme neplatili za reklamy, ktoré nič neprinášajú.

Ktoré súbory cookie?
  • Google Ads cez Google Tag Manager (_gcl_au, _gcl_aw), najviac 90 dní
  • OpenAI Ads, reklamy v ChatGPT
  • wok_aff: ktorý partner vás k nám odporučil (partnerský program), 60 dní

4,6

Krajina a jazyk

Každá krajina má vlastný web s cenami a DPH danej krajiny.

Zobraziť

Menej je viac: upratovanie a riešenie konfliktov

Modul 5: Témy a pluginy · Čas čítania: 9 minút

Cieľ lekcie: Po tejto lekcii dokážete upratať pluginy a sami vypátrať a vyriešiť konflikt alebo bielu stránku.

Kľúčové pojmy: deaktivovať vs odstrániť, neaktívny kód, kritická chyba, núdzový režim (recovery mode), Zdravie webovej stránky, režim riešenia problémov, premenovanie priečinka pluginu, WP_DEBUG, WP_DEBUG_LOG, debug.log, chybový log

Vypnutie nie je zahodenie

Pri pluginoch môžete plugin deaktivovať alebo odstrániť. Rozdiel:

  • Deaktivovať: WordPress plugin už nenačítava. Súbory však zostávajú v priečinku wp-content/plugins/ a často sú stále priamo dostupné cez webový server. Ak je v jednom PHP súbore tohto pluginu bezpečnostná diera, tá tam stále je. Útočníci skenujú podľa známych zraniteľných súborov, nie podľa aktívnych pluginov.
  • Odstrániť: súbory sa vymažú. Niektoré pluginy pri odstránení upracú aj svoje nastavenia a tabuľky v databáze; iné ich nechajú tak.

Ak plugin už nepoužívate, odstráňte ho. Deaktivácia je len na chvíľu (počas hľadania problému). To isté platí pre témy (lekcia 2.4).

Upratovanie: pravidelná kontrola

Raz za štvrťrok (lekcia 9.4) prejdite svoje pluginy. Pri každom plugine si položte otázky:

  1. Na čo slúži? Ak to neviete, zistite to. Často sa ukáže, že plugin bol kedysi nainštalovaný na jednu konkrétnu vec a nikdy nebol odstránený.
  2. Používa sa ešte? Plugin na slider, hoci nikde žiadny slider nie je, plugin na formuláre, hoci kontaktná stránka používa iný formulár.
  3. Dá sa bez neho zaobísť? Dokáže to isté už WordPress, téma alebo iný plugin (lekcia 5.3)?
  4. Je ešte udržiavaný? Kedy bol naposledy aktualizovaný, je ešte v adresári pluginov?

Upratovanie robte najprv v testovacom prostredí (staging) (lekcia 8.3), alebo aspoň vytvorte zálohu, a odstraňujte vždy len jeden plugin naraz, aby ste vedeli, čo spôsobilo problém, ak sa niečo pokazí. Dajte pozor na shortcody: ak odstránite plugin, ktorý zobrazoval [formulier id="2"], tento text potom zostane na stránke doslovne zobrazený.

Keď sa niečo pokazí: kritická chyba

Po aktualizácii, novom plugine alebo prechode na novú verziu PHP zrazu uvidíte:

Na vašej web stránke sa vyskytla kritická chyba.

alebo úplne bielu stránku. To znamená, že PHP sa zastavilo s fatálnou chybou ešte predtým, než vznikla stránka (lekcia 1.2). Väčšinou to spôsobí plugin alebo téma, ktoré nie sú kompatibilné s niečím iným: iným pluginom, novou verziou WordPressu alebo verziou PHP.

Od WordPressu 5.2 WordPress v takom prípade urobí dve veci:

  • pošle e-mail na adresu administrátora s informáciou, ktorý plugin alebo ktorá téma chybu spôsobili, a špeciálny odkaz;
  • pomocou tohto odkazu sa prihlásite do núdzového režimu (recovery mode): administrácia potom funguje, pričom plugin, ktorý chybu spôsobil, je dočasne vypnutý, takže ho môžete aktualizovať, nahradiť alebo odstrániť.

Preto je tak dôležité mať adresu administrátora, ktorú skutočne čítate (lekcia 2.2).

Vlastné hľadanie: postup krokov

Nepríde žiadny e-mail, alebo núdzový režim nefunguje? Takto to nájdete sami.

1. Pozrite sa do chybového logu

Chyba sa takmer vždy nachádza v chybovom logu webového servera alebo PHP. V DirectAdmine ho nájdete pri logoch vašej domény. Hľadáte riadok s PHP Fatal error a časom vášho pokusu:

PHP Fatal error:  Uncaught Error: Call to undefined function create_function()
in /home/gebruiker/domains/example.com/public_html/wp-content/plugins/oude-slider/slider.php:42

Cesta vám povie, kto je vinníkom: v tomto prípade plugin v priečinku oude-slider. Zvyšok riadku hovorí prečo (tu: funkcia, ktorá bola z PHP 8 odstránená, lekcia 8.4).

2. Zapnite debug log (nie zobrazenie na obrazovke)

Ak v chybovom logu nie je nič použiteľné, pridajte do wp-config.php (nad „stop s úpravami“):

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );

WordPress potom zapisuje všetky chyby do wp-content/debug.log, bez toho, aby ich zobrazoval návštevníkom. Nikdy to nenechávajte zapnuté dlhšie, než je potrebné: debug.log sa nachádza v priečinku, ktorý webový server sprístupňuje, a kto pozná adresu, môže ho čítať. Sú v ňom cesty, niekedy používateľské mená a ďalšie informácie, ktoré pomáhajú útočníkovi. Po skončení hľadania to znova vypnite a debug.log odstráňte. Prípadne nechajte WordPress zapisovať logový súbor mimo webového priečinka tak, že pri WP_DEBUG_LOG zadáte cestu (napríklad '/home/gebruiker/logs/wp-debug.log', ak to váš hosting umožňuje). V lekcii 7.4 si overíte, že debug.log nie je verejne prístupný.

3. Vypnutie pluginu bez prístupu do administrácie

Ak sa nedostanete do administrácie, vypnite podozrivý plugin premenovaním jeho priečinka, cez Web FTP alebo SFTP:

wp-content/plugins/oude-slider   wordt   wp-content/plugins/oude-slider-uit

WordPress potom plugin nenájde a vypne ho. Ak neviete, ktorý to je, premenujte celý priečinok plugins na plugins-uit: všetky pluginy sa vypnú. Ak stránka potom funguje, vytvorte nový prázdny priečinok plugins, pluginy vracajte po jednom a po každom skontrolujte, či sa chyba nevráti. Pre tému platí to isté: premenujte priečinok aktívnej témy a WordPress sa vráti k predvolenej téme, ak ešte existuje (lekcia 2.4).

4. Konflikty bez fatálnej chyby

Nie každý problém je kritická chyba. Niekedy nefunguje len jedna funkcia: tlačidlo nič nerobí, formulár sa neodosiela, editor sa načíta len sčasti. Vtedy ide často o konflikt medzi dvoma pluginmi alebo medzi pluginom a témou. Na to je užitočný oficiálny plugin Health Check & Troubleshooting: v režime riešenia problémov vypne iba pre vašu reláciu všetky pluginy a prepne na predvolenú tému, zatiaľ čo návštevníci naďalej vidia bežnú stránku. Potom ich postupne zapínate späť, kým sa problém nevráti.

Pozrite sa aj do konzoly vo svojom prehliadači (F12): chyby JavaScriptu často uvádzajú súbor, a tým aj plugin.

Zdravie webovej stránky

V časti Nástroje > Zdravie webovej stránky WordPress sám kontroluje vašu stránku: zastaranú verziu PHP, pluginy a témy, ktoré nie sú aktívne, chýbajúce PHP rozšírenia, nefunkčné REST API, naplánované úlohy, ktoré meškajú. Na karte Informácie nájdete všetky údaje o vašej inštalácii (verzie, cesty, nastavenia PHP). Túto kartu môžete skopírovať a poslať, keď žiadate o pomoc. Pozrite sa sem vždy po väčšej zmene.

Zhrnutie

  • Deaktivácia necháva súbory na mieste; odstráňte pluginy a témy, ktoré nepoužívate.
  • Upratujte každý štvrťrok, vždy jeden plugin naraz, so zálohou alebo v testovacom prostredí.
  • Pri kritickej chybe pošle WordPress e-mail s odkazom do núdzového režimu.
  • Chybový log alebo debug.log uvádza cestu k vinníkovi; po skončení hľadania debug znova vypnite, pretože debug.log je inak verejne prístupný.
  • Bez prístupu do administrácie vypnete plugin premenovaním jeho priečinka; konflikty hľadáte pomocou režimu riešenia problémov.

Kvíz

1. Prečo nie je deaktivovaný plugin úplne bezpečný?



2. Vaša stránka zobrazuje „Vyskytla sa kritická chyba“ a nemôžete sa prihlásiť. Čo je najrýchlejší prvý krok?



3. Prečo nastavíte WP_DEBUG_DISPLAY na false, keď zapínate WP_DEBUG na ostrej stránke?



4. Ako vypnete plugin, keď sa nedostanete do administrácie?



Úloha

Úloha A5.4: Nie je váš debug log verejne prístupný? Zadajte adresu svojej stránky a kódom, ktorý vám úloha poskytne, dokážte, že ide o vašu vlastnú stránku (TXT záznam alebo malý súbor). Program si vyžiada /wp-content/debug.log: dobré je, ak tento súbor neexistuje alebo je prístup odmietnutý (404 alebo 403). Ak program dostane súbor späť, je to označené červenou. Okrem toho program spočíta, koľko rôznych priečinkov pluginov sa vyskytuje v HTML kóde vašej domovskej stránky (len informatívne).

Úloha A5.4: Nie je váš debug log verejne prístupný?

Táto kontrola si vyžaduje cesty, ktoré necháte overiť len pri vlastnej webovej stránke. Najprv kliknite na „Zobraziť môj kód“ a tento kód vložte ako TXT záznam na _weboke-cursus.<vaša doména> alebo ako súbor na vašu webovú stránku (pozrite si vysvetlenie pri kóde).


Čo vyplníte a čo nájdeme, neukladáme. Váš prehliadač si pamätá vaše odpovede a to, či ste úlohu splnili. Po prihlásení si v sekcii Moje kurzy uchovávame iba to, že úloha bola (takmer) správne vyriešená; aj to tam môžete odstrániť.

Úloha D5.4: Upratanie zoznamu pluginov. Vytvorte zoznam všetkých svojich pluginov (aktívnych aj neaktívnych): názov, na čo slúži, či je ešte potrebný (áno/nie), alternatíva bez pluginu. Odstráňte (po zálohe alebo v testovacom prostredí) pluginy, ktoré už nie sú potrebné, vždy jeden naraz, a po každom odstránení skontrolujte, či stránka ešte funguje. Zapíšte, koľko pluginov ste mali a koľko ich zostalo, a poznačte si, či zostali nejaké shortcody, ktoré bolo treba upratať.

Úloha D5.4: Upratanie zoznamu pluginov

Túto úlohu vykonávate sami, nikto ju nekontroluje. Odškrtnite, čo ste urobili, a označte úlohu ako splnenú.



Vaše zaškrtnutia a poznámky zostávajú iba v tomto prehliadači, nikam ich neposielame. Po prihlásení si v sekcii Moje kurzy uchovávame iba to, že ste úlohu splnili.

Ďalšie čítanie

Tieto články popisujú kroky v paneloch WebOké; v iných paneloch to funguje podobne.

Chvíľu strpenia…

Nastavte svoje domény

Pri každej doméne nastavte nameservery, prepojenie s hostingom a to, kto bude jej vlastníkom.

Načítavajú sa vaše domény…