Co je to verze příspěvku?
Anglicky post revisions ve WordPressu jsou kopie každé změny provedené v obsahu (článek, stránka atd.), které slouží k uchování historie editací. Tato funkce vám umožňuje přecházet mezi různými stavy obsahu a obnovovat předchozí, pokud je to potřeba.
Když vytvoříte nebo upravíte článek nebo stránku, WordPress automaticky vytvoří revizi a uloží ji do databáze. Tím se zaznamenává, jaké konkrétní změny byly provedeny. Uživatelé s dostatečným oprávněním mohou pak procházet historií a případně obnovovat předchozí stavy obsahu.
Existují různé situace, kdy může být původní obsah důležitý:
- Zpětné zobrazení změn: Můžete se podívat, co bylo změněno v příspěvku nebo stránce v průběhu času.
- Obnovení starší verze: Pokud se rozhodnete vrátit k předchozí revizi příspěvku, můžete ji jednoduše obnovit do požadovaného stavu.
- Porovnání: Můžete porovnávat různé historie změn příspěvků, abyste viděli, jak se obsah vyvíjel.
- Zotavení před chybou: V případě chyby nebo nechtěné změny můžete snadno obnovit předchozí stav.
Pokud vás zajímá více podrobných informací, můžete navštívit oficiální dokumentaci WordPressu, konkrétně článek věnovaný revizím příspěvků.
Motivace k mazání verzí
Smazat předchozí revize příspěvků ve WordPressu může být užitečné z několika důvodů:
- Úspora místa na serveru: Každá totiž obsahuje kompletní kopii příspěvku nebo stránky v daném čase. Pokud máte mnoho verzí příspěvků, mohou vám zabírat značné množství místa na serveru. Mazání nepotřebných tak může uvolnit prostor.
- Zvýšení výkonu databáze: Při každém uložení revize se data zaznamenávají do databáze. Mnoho záznamů pak může zpomalit vyhledávání v databázi.
Proč verze příspěvků nemazat?
Někdy se může stát, že jsou nezbytným zdrojem dat v případech, kdy:
- Některý z uživatelů omylem přepsal obsah a potřebujete se k původnímu vrátit.
- Provádíte nějakou opakovanou činnost s obsahem – konkrétní část stránky zobrazujete a skrýváte v pravidelných intervalech.
Porovnání obou přístupů
Není lepší si nechat zálohu starších příspěvků? Ano, ale… jak jsem psal výše, mohou opravdu zabírat spoustu místa. V některých případěch dokonce mohou obsahovat i nebezpečné kódy a to nechcete. :-)
Řešením může být kompromis, tedy nastavit si maximální počet posledních revizí např. na 5 a staré verze příspěvků od nějakého staršího data smazat. Jak toho lze docílit, můžete zjistit v textu níže.
Konfigurace maximálního počtu verzí příspěvků a stránek
WordPress vám v seznamu svých pluginů bude nabízet řešení, které vám zase akorát zabere místo a spolkne výkon vašeho webu. Přičemž stačí jednoduchá konfigurace:
V souboru wp-config.php, který se nachází v kořenovém adresáři WordPressu, můžete přidat následující kód na konec souboru:
define('WP_POST_REVISIONS', 5); // Nahraďte 5 požadovaným počtem
Toto nastavení však neznamená, že by se automaticky staré záznamy z databáze smazaly. WordPress bude ponechávat pouze posledních 5 revizí, což by mělo být dostačující pro většinu případů. Jak ale smazat revize, které byly vytvořené před touto úpravou? Čtěte v dalším kroku.
Smazání nepotřebných verzí z databáze
Před mazáním řádků v databázi je vždy dobré vytvořit zálohu webu nebo alespoň konkrétní tabulky (ideálně např. přes Adminer), abyste se vyhnuli možným problémům v případě, že by došlo k nějaké chybě nebo ztrátě dat.
# smaže řádky od konkrétního data
DELETE
FROM `wp_posts`
WHERE `post_type` = 'revision' AND `post_modified` <= '2020-12-31';
# smaže doplňková data k již smazaným řádkům
DELETE
FROM `wp_postmeta`
WHERE `post_id` NOT IN(SELECT ID FROM wp_posts);
Závěr
Po provedení obou kroků se může stát, že u příspěvků stále vidíte v nastavení příspěvku vyšší číslo, než jste definovali v souboru wp-config.php. Je to z důvodu toho, že jste nesmazali z databáze ještě revize před nějakým konkrétním datem.
Věřím, že návod jednoduše pomohl objasnit, jak verzování příspěvků ve WordPressu fungují a jak se s nimi případně popasovat. Rozhodně nechci říct, že tento návod je jediné správné řešení, ale na webech typicky pro menší a střední firmy je to v mém případě běžné řešení.
A co vy? Mažete verze příspěvků nebo je necháváte ladem plnit databázi? Podělte se v komentářích.