Optimalizovat WordPress

Optimalizujte WordPress pomocí 10 nejdůležitějších nastavovacích šroubů

Na webu se to hemží tipy a triky, jak optimalizovat výkon WordPressu. Bohužel vysvětlení a vyhodnocení významu jednotlivých nastavovacích šroubků rychle ustupují do pozadí. Ukážeme vám důležitá východiska a nastavovací šrouby - v rozumném pořadí a s kontextem. Tímto způsobem můžete dosáhnout úspěchu obzvlášť rychle.

Mezitím jsme hostili mnoho projektů WordPress. Během nich se nashromáždilo mnoho dat. A stále znovu se nás ptáte, jak lze dobu načítání webu WordPress ještě více zkrátit. Systematicky jsme tedy zpracovali naše poznatky z minulých let. Výsledek: 10 opatření, pomocí kterých můžete snadno a rychle optimalizovat rychlost načítání stránek WordPressu.

Jedna věc je obzvláště důležitá: někteří se rychle nechají odradit návrhy optimalizace v nástrojích, jako je Google PageSpeed Insights. Dovolte mi, abych vám to řekl: Nejvíce času načítání nezískáte složitými optimalizačními opatřeními, ale snadno proveditelnými metodami.

Návrhy optimalizace WordPressu od společnosti Google
Jen několik lidí může s touto zprávou skutečně něco udělat. Proto je obzvláště důležité, abyste se nejprve soustředili na jednoduché optimalizační kroky a složitějším opatřením se věnovali až ve druhém kroku.

Optimalizace doby načítání samozřejmě není samoúčelná. Kromě lepšího uživatelského zážitku přináší kratší doba načítání také výhody pro viditelnost vaší nabídky v Googlu. Z tohoto důvodu také stručně nastíním, o co vlastně v jednotlivých krocích optimalizace jde, abyste si vytvořili odpovídající kontext.

Teoreticky můžete postupovat shora dolů, a tak postupně zlepšovat dobu načítání webu. Mimochodem, prvních sedm bodů se týká také typických návrhů na zlepšení od společnosti Google PageSpeed Insights, kterým se podrobněji věnujeme například v tomto článku.

#1 Ukládání do mezipaměti - nejdůležitější faktor výkonu pro rychlé načítání

Ukládání do mezipaměti neboli caching znamená, že vaše stránka nemusí být nejprve požadována prohlížečem z webového serveru a poté sestavena krok za krokem. Místo toho je stránka načtena z mezipaměti s dokončeným vykreslováním.

Výhoda tohoto ukládání do mezipaměti je zřejmá: WordPress nemusí přepočítat stránku při každém jejím zobrazení. Protože je WordPress založen na velmi pomalém PHP, je zde ukládání do mezipaměti elementární. Protože mimo jiné brání, aby musel být PHP načten.

V zásadě existují dvě varianty implementace do mezipaměti:

  • O pluginech mezipaměti: Většina uživatelů používá plugin mezipaměti, například W3 Total Cache nebo WP Super Cache. Jejich nastavení je někdy jednodušší, jindy složitější. V každém případě je zde zapotřebí určitá míra ruční práce.
  • O hostiteli: Někteří hostitelé - včetně Raidboxes - nabízejí ukládání do mezipaměti na straně serveru. To znamená, že se téměř vždy obejdete bez cachovacích pluginů. Je to proto, že poskytovatel hostingu již nakonfiguroval mezipaměť za vás.

Pokud jste nastavili vysoce výkonné ukládání do mezipaměti, učinili jste již nejdůležitější krok k optimalizaci WordPressu. Podrobnější informace naleznete v našem článku o základech cachování.

#2 WordPress úklid - pořádek nade vše

Podle našich zkušeností je jednou z nejčastějších příčin dlouhého načítání přetížená instalace WordPressu. A protože tento bod vylepšení Google PageSpeed Insights nezmiňuje, je v mé top 10 přímo na druhém místě.

Nepřehledná instalace WordPressu ve většině případů znamená: Nainstalováno je příliš mnoho zásuvných modulů. V zásadě platí, že čím méně pluginů, tím rychlejší web. Zásuvné moduly jsou samozřejmě důležité a neobejdete se bez nich, ale vždy byste měli zkontrolovat, které zásuvné moduly skutečně potřebujete.

A: Měli byste dávat pozor, abyste pluginy nejen deaktivovali, ale zcela je odstranili.

Optimalizujte WordPress: Přehled zásuvných modulů vám přesně ukáže, kolik zásuvných modulů máte nainstalovaných, aktivovaných a kolik jich ještě potřebujete aktualizovat.
V přehledu zásuvných modulů se přesně zobrazuje, kolik zásuvných modulů je aktuálně deaktivováno. V zásadě by u položky "Neaktivní" měla být vždy uvedena nula. Pokud tomu tak není, položte si otázku: Potřebuji deaktivovaný zásuvný modul vůbec?

Totéž platí u šablon: Víc než jednu nepotřebujete.

Pozadí je následující: každý zásuvný modul a každé téma přidává na vaše webové stránky kód PHP. To platí i pro deaktivované zásuvné moduly. Tím se vaše webové stránky stávají celkově objemnějšími, a tudíž pomalejšími (a náchylnějšími k útokům). Je to proto, že PHP je velmi pomalý skriptovací jazyk. Čím méně ho bude, tím lépe.

Zásuvné moduly a motivy, které již nejsou potřeba, jsou často pozůstatkem funkčních a designových testů. Proto je dobré webové stránky WordPress pravidelně čistit a nové funkce a návrhy testovat spíše v testovacím prostředí než na samotných webových stránkách. Tímto způsobem se vyhnete hromadění příliš velkého množství zbytků zásuvných modulů.

#3 Obrázky: podceňovaná brzda doby načítání

Jedním z nejúčinnějších a nejjednodušších opatření ke zkrácení doby načítání je zmenšení velikosti obrázků. Zde můžete ušetřit velké množství dat. Bezztrátová komprese obrázků" zmenšuje velikost souborů s obrázky bez viditelné ztráty kvality. To znamená, že se vaše stránka téměř vůbec nezmění, a zároveň můžete díky optimalizaci obrázků výrazně snížit její velikost.

Obrázky často tvoří největší část objemu dat na webových stránkách. Zmenšení velikosti obrázků by proto mělo být jedním z prvních kroků optimalizace. Obrázky můžete optimalizovat buď ručně, nebo pomocí kompresního pluginu.

Použití zásuvného modulu je jistě pohodlnějším řešením. Zásuvné moduly umožňují nejen komprimovat nové obrázky a jejich náhledy, ale také se automaticky starají o všechny stávající obrázky na vašich webových stránkách. Tato služba je však často zpoplatněna.

#4 CSS a JavaScript - zní objemně, lze ale snadno optimalizovat

Druhým největším objemem dat na webových stránkách jsou obvykle soubory JavaScript a CSS. Zde se projevuje velký strach z kontaktu. Ale i bez znalosti kódu snadno pochopíte, v čem spočívá optimalizace CSS a JavaScriptu. V zásadě je zde třeba udělat tři věci:

  • Shrňte: CSS a JavaScript jsou ukryty v mnoha malých jednotlivých souborech. Prohlížeč si musí každý z těchto souborů vyžádat z webového serveru samostatně. To generuje požadavky HTTP, které mají tendenci prodlužovat dobu načítání webových stránek. Pokud jsou však skripty kombinovány, sníží se počet souborů, které je třeba načíst, a tím i počet požadavků. Například z 53 jednotlivých požadavků se stane jen asi tucet. Samozřejmě to za vás mohou udělat i příslušné moduly plug-in.
  • Snížení: Soubory CSS a JavaScript jsou řádky kódu, které umožňují určité funkce a vzory na vašich webových stránkách. Tento kód píší lidé. Čtou ho však stroje. Proč je to důležité? Mnoho z toho, co člověk potřebuje ke správnému pochopení kódu, počítač nepotřebuje. Mezery, komentáře a podobně tedy nejsou potřeba k tomu, aby vaše stránka mohla být správně sestavena. Zde přicházejí ke slovu zásuvné moduly, jako je Autoptimize. Převádějí CSS a JavaScript z lidsky čitelného kódu na strojově čitelný. Díky tomu jsou jednotlivé datové pakety menší a jejich přenos rychlejší.
  • Komprimovat: Po sloučení a zmenšení je posledním krokem komprese datových paketů, které jsou odesílány z webového serveru do prohlížeče. To znamená, že server minimalizuje velikost jednotlivých požadavků a prohlížeč je rozbalí a vypočítá. To je rychlejší než odesílání nekomprimovaných datových balíčků. Takovou kompresi GZIP můžete nastavit například pomocí zásuvných modulů kešování, pomocí ručního nastavení v souboru .htaccess nebo váš hostitel již kompresi na straně serveru aktivoval.

I bez znalosti skript je snadné pochopit, co jednotlivá opatření přinášejí. Pro všechny tři kroky navíc existují pluginy, které umožňují optimalizovat CSS a JavaScript i neprofesionálům. V našem článku o optimalizaci CSS a JavaScriptu vysvětlujeme další podrobnosti a představujeme různé pluginy.

Čtyřka vyhrává!

V těchto čtyřech oblastech lze ušetřit spoustu času při načítání. S relativně malým úsilím můžete již nyní optimalizovat svůj výkon - díky ukládání do mezipaměti, optimalizaci obrázků, optimalizaci CSS a JavaScriptu a vyčištění WordPressu můžete již nyní dosáhnout výrazného zlepšení.

#5 Hosting má velký vliv na dobu načítání

První čtyři oblasti optimalizace slibují obzvláště velké zkrácení doby načítání, ale mohou být k ničemu, pokud vás hosting zpomaluje. Nejde ani tak o hardwarové požadavky na WordPress, ale spíše o určité technologie, které ukazují, že vám hosting umožňuje WordPress odpovídajícím způsobem optimalizovat.

Jako pravidlo si můžete zapamatovat, že vysoce výkonný hosting WordPress by měl mít tyto klíčové údaje:

  • Pevný disk SSD
  • Paměťový limit PHP alespoň 64 MB, lépe 128 MB
  • Datové centrum v zeměpisné blízkosti vaší cílové skupiny
  • Aktuální verze PHP
  • HTTP/2 a bezplatný certifikát SSL

Pak je tu rozdíl mezi sdíleným hostingem (shared hosting) a vlastním (virtuálním) serverem.

Při sdíleném hostingu sdílíte server a jeho výpočetní výkon s dalšími webovými stránkami. Obvykle je to několik desítek až několik stovek. U vlastního serveru se o výpočetní výkon s nikým dělit nemusíte. Nabízí proto výhodu v podobě bezpečnosti výkonu.

Ačkoli vlastní server není synonymem větší výkonnosti, zkušenosti ukazují, že levné hostingové tarify, které stojí jen pár eur měsíčně, nemohou konkurovat s virtuálními servery, pokud jde o výkon.

"*" povinný údaj

Rád bych se přihlásil k odběru newsletteru, abych byl informován o nových článcích na blogu, e-knihách, funkcích a novinkách ve WordPressu. Svůj souhlas mohu kdykoli odvolat. Více informací v našich Zásadách ochrany osobních údajů.
Toto pole slouží k ověření a nemělo by se měnit.

Detaily - méně přínosu, více úsilí

Všechny oblasti důležité pro výkon, které jsem dosud zmínil, může optimalizovat téměř každý. Buď pomocí zásuvných modulů, jednoduchým pokusem a omylem, nebo zakoupením odpovídajících produktů. Složitější to bude, pokud jste již tyto oblasti optimalizovali. Pak totiž musíte jít hlouběji do struktury stránky. A jednotlivá optimalizační opatření už nemají takový dopad.

#6 Blokování vykreslení - nesprávné pořadí při načítání

Bod, na který si nástroje jako je Google PageSpeed Insights opakovaně stěžují, je pořadí načítání, které blokuje vykreslování.

Problém je zřejmý na příkladu: Posuvník se skládá z obrázků a příkazu animace, který tyto obrázky otáčí. Pokud je příkaz JavaScriptu načten jako první a obrázky jako poslední, vaše stránka již má funkci posuvníku, ale ne obrázky, které se mají zobrazit. Stránka se proto bude načítat déle. Tomuto stavu lze zabránit správným pořadím načítání.

Přestože existují pluginy pro optimalizaci pořadí načítání, naše zkušenosti ukazují, že ne vždy jsou schopny plně optimalizovat vaše webové stránky. Ve skutečnosti nejlepších výsledků v takovém případě obvykle dosáhne webový designér, který je s webem a jeho funkcemi dobře obeznámen.

#7 Above the Fold - Optimalizace viditelné oblasti stránky

Kromě celkové doby načítání webu je rozhodující i vnímaná doba načítání. Jinými slovy doba, která je vizuálně vnímána jako doba načítání. Tuto vnímanou dobu načítání lze zkrátit pomocí několika triků. Například získáte dojem, že stránka je již kompletně sestavena, přestože na pozadí stále probíhají výpočty.

Optimalizace pořadí zatížení je obzvláště důležitá pro optimalizaci této oblasti, známé jako nad záhybem. To znamená upřednostnit obsah a funkce, které by návštěvníci měli vidět na první velikosti obrazovky.

Optimalizujte WordPress: Ilustrace nad záhybem z raidboxes.de
Horní část je zobrazena návštěvníkovi raidboxes.de posouvání. Toto je tzv. Nad záhybem. Pro další informace musí návštěvník komunikovat se stránkou a posouvat ji.

Toho lze dosáhnout například optimalizací sekvence načítání. Existují však také pluginy, které zajistí efektivnější načítání stránky. A to pouze ve viditelné oblasti. a3 Lazy Load je příkladem takových pluginů. Tímto způsobem se vám stále zobrazí veškerý obsah, ale doba načítání stránky z toho může těžit, zejména pokud se jedná o stránku s velkým množstvím obrázků.

#8 Úklid databáze

Kromě obrázků a skriptů může být vaše databáze také příliš velká. Existují praktické nástroje, které vaši databázi udržují pěkně štíhlou, včetně pluginu WP-Optimize.

#9 Pingbacky a trackbacky

Ve výchozím nastavení WordPress komunikuje s jinými webovými stránkami, které umožňují pingbacky a trackbacky. Pokaždé, když je vaše webová stránka nebo jeden z vašich blogpostů zmíněn na takové webové stránce, je vaše webová stránka automaticky upozorněna - čímž je databáze zatížena navíc.

Pokud tuto funkci nepotřebujete (podle mého názoru je její přidaná hodnota stejně zanedbatelná), měli byste pingbacky a trackbacky deaktivovat. Opět zde pomůže plugin WP-Optimize. Pro úplnost je však třeba na tomto místě zmínit, že se jedná spíše o teoretický problém. Zatím jsme z tohoto důvodu nezaznamenali vážné ztráty výkonu.

#10 Zábrana hotlinkingu

Hotlinking znamená, že někdo odkazuje přímo na obrázek na vašem serveru, čímž vám vlastně "krade" šířku pásma. Na webovém serveru Apache můžete zabránit odkazování pomocí hotlinků přidáním následujícího kódu do souboru .htaccess:

RewriteEngine on

RewriteCond %{HTTP_REFERER} !^$

RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?yourwebsite.com [NC]

RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?google.de [NC]

RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?google.com [NC]

RewriteRule .(jpg|jpeg|png|gif)$ – [NC,F,L]

Chcete-li na serveru NGINX zabránit odkazování za chodu, přidejte do konfiguračního souboru NGINX tyto řádky kódu:

location ~ .(gif|png|jpeg|jpg|svg|webp)$ {
     valid_referers none blocked server_names
	 *.example.com example.* www.example.org/galleries/ ~\.google\.;
     if ($invalid_referer) {
        return 403;
    }
}

Členění kódu:
location ~ .(gif|png|jpeg|jpg|svg|webp)$ {
určuje přípony souborů, které chcete chránit před horkými odkazy, například pokud chcete chránit soubory PDF, řádek kódu by vypadal takto:
location ~ .(gif|png|jpeg|jpg|svg|webp|pdf)$

{valid_referers none blocked server_names
*.yourwebsite.com ~.google. ~.bing. ~.yahoo.;
Tyto řádky jsou trochu obsáhlejší, ale pomohou vám lépe pochopit, co všechno můžete s tímto pravidlem dělat. V těchto řádcích je uvedeno, které domény mohou přesto odkazovat na vaše soubory. V tomto příkladu je to yourwebsite.com se všemi subdoménami a také Google, Bing a Yahoo.

if ($invalid_referer) {
return 403;
}
Pokud nyní přijde požadavek a požadovaný zdroj NENÍ na vrcholu vašeho whitelistu, server vrátí chybu 403 (Forbidden).

Další metody prevence horkých odkazů

V oficiálním adresáři pluginů WordPressu najdete řadu bezpečnostních pluginů, které můžete použít k zabránění hotlinkingu - například All In One WP Security & Firewall. Na adrese Raidboxes můžete hotlinkingu zabránit také prostřednictvím hlaviček CORS v nastavení webu Box . Pokud máte jakékoli dotazy ohledně konfigurace hlaviček na Box , obraťte se na náš tým podpory.

"A co CDN?"

Jednou z nejčastěji kladených otázek je síť pro doručování obsahu (CDN). Například: "Zrychlí CDN mé webové stránky pro návštěvníky v Německu?", "Proč vlastně potřebuji CDN?", "Doporučili byste mi používat CDN pro můj blog nebo obchod?". Ve většině případů však odpověď zněla: ne.

Stručně řečeno: CDN má největší smysl, pokud jsou vaši uživatelé geograficky široce rozmístěni. Například pokud máte zákazníky ve střední Evropě, Jižní Americe a Austrálii. Pokud je vaše hlavní cílová skupina omezena na jednu zemi, můžete síť CDN pro optimalizaci WordPressu rovnou zavrhnout.

Mimochodem, vývojář WordPressu Ernesto Ruge napsal o tomto problému velmi pěkný článek, který vám mohu jen doporučit.

Závěr: Nebojte se složitě působících optimalizačních kroků

Často existuje strach z kontaktu s takovými oblastmi, ve kterých je obzvláště snadné ušetřit čas při nakládání, nebo jsou zanedbávány. Jiné, jako například CDN, se však při konzultacích objevují stále znovu, ačkoli obvykle nemají na dobu načítání webu vůbec žádný vliv.

Proto vám mohu jen doporučit, abyste se nejprve zaměřili na "nízko visící ovoce" optimalizace výkonu WordPressu. S relativně malým úsilím můžete již nyní dosáhnout velkého pokroku při snižování doby načítání. A to i v případě, že jste laik.

Nenechte se proto znejistit radou nástrojů, jako je Google PageSpeed Insights.

Protože jde u optimalizace doby načítání ve své podstatě jen o několik oblastí:

  • Zmenšení velikosti webových stránek
  • Snížení počtu požadavků HTTP
  • Komprese jednotlivých datových balíčků
  • Optimalizace vnímané doby načítání

Pokud jste to pochopili, můžete také rozumně otočit 10 nejdůležitějších šroubů optimalizace WordPressu. A pro složitější optimalizační kroky jsou tu také odborníci, kteří váš web vyšperkují.

Doba načítání vám poděkuje!

Líbil se vám tento článek?

Svou recenzí nám pomůžete zlepšit náš obsah.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Povinná pole jsou označena *.