Každý web založený na redakčním systému WordPress má také i svůj RSS kanál. Ten umožňuje uživatelům Vašeho webu aby si Vaše stránky přidali do své RSS čtečky a byli tak informováni o každém Vašem novém článku. To je určitě skvělá věc, obzvláště pro Vaše pravidelné čtenáře. Občas ale máte kategorie, které do tohoto RSS kanálu zahrnout nechcete. Proto se v tomto článku podíváme, jak odstranit určité kategorie WordPressu z RSS feedu. Uděláme to pomocí krátkého PHP kódu a pomocí pluginu WPCode.
Jak odstranit určité kategorie WordPressu z RSS feedu
Co je to RSS kanál (RSS Feed)
RSS feed v rámci WordPressu představuje formu distribuce obsahu. Ta umožňuje uživatelům získávat aktualizace z vašeho webu bez potřeby manuální návštěvy stránky. Tento nástroj pracuje na principu syndikace, sbírá informace o nových článcích, aktualizacích nebo změnách na vašem webu a poskytuje je ve strukturovaném formátu, který je snadno čitelný pro různé RSS čtečky.
RSS čtečka je pak software, který se chová podobně jako mailový klient. Podívá se na stránku, přečte její nový obsah a ten Vám ukáže. Vy se poté rozhodnete, zda se chcete na daný obsah podívat a navštívíte stránku, nebo nikoliv. To je praktické v momentě, kdy sledujete např. 10 oblíbených webů. Nechcete totiž každý den navštívit deset webů a podívat se, zda tam není nový článek. RSS čtečka toto udělá za Vás a všechny články Vám pohodlně stáhne a zobrazí.
Jak zjistím ID kategorie
Každý článek, stránka, rubrika nebo štítek ve WordPressu má své unikátní ID. Toto ID se hodí obvykle při úpravách webu, nebo v momentě, kdy do webu přes shortcody vkládáte nové funkce. Zjednodušeně řečeno, pokud nějakým shortcodem nebo snippetem budete chtít ovlivnitř např. pouze určitou kategorii či kategorie, budete nutně potřebovat znát jejich ID.
ID kategorie zjistíte velmi jednoduše. Pokud si totiž danou kategorii rozkliknete v administraci WordPressu, vidíte její ID přímo v URL adrese. To je asi ten nejrychlejší způsob, jaký ID dokážete zjistit.
Pokud by Vás zajímal kompletní návod na zjišťování ID čísel kategorií nebo např. i štítků, podívejte se na tento článek, kde je celá problematika rozebraná detailněji: Jak zjistit ID článku, stránky, rubriky či štítku ve WordPressu?
Jak odstranit určité kategorie WordPressu z RSS feedu pomocí pluginu WPCode
Abychom pro tyto účely neinstalovali další plugin, použijeme snippet a oblíbený plugin WPCode, který by měl mít nainstalovaný každý, kdo chce upravovat vlastnosti a chování svého webu na WordPressu. Snippet není nic jiného, než krátký kód v PHP či jiném jazyce, který mění vlastnosti a chování webu.
Instalace pluginu WPCode
Abyste mohli vkládat kódy do svého webu, můžete zvolit dvě varianty. Kód vložíte natvrdo do souboru, kam patří, nebo použijete plugin, který bude části kódu vkládat do webu za běhu. Druhá variante je lepší z jednoho prostého důvodu. Je bezpečnější a zároveň se Vám kód nevymaže s každou aktualizací, která přepíše soubor s Vaším kódem.
Instalaci pluginu WPCode provedete následovně:
- klikněte si v levém menu na položku “Pluginy“
- v podmenu zvolte položku “Přidat nový“
- v pravém horním rohu si všimněte vyhledávacího pole
- napište do něj klíčovou frázi WPCode
- jakmile Vám WordPress plugin najde, nainstalujte jej a aktivujte.
- Pokud by Vás zajímal kompletní článek, kde popisuji práci s tímto pluginem, podívejte se sem: Jak do WordPressu vkládat vlastní kódy
Snippet pro vyřazení kategorie z RSS Feedu
Pomocí pluginu WPCode vložte do svého webu tento snippet:
function exclude_category($query) {
if ( $query->is_feed ) {
$query->set('cat', '-5, -2, -3');
}
return $query;
}
add_filter('pre_get_posts', 'exclude_category');
Všimněte si hlavně řádku:
$query->set('cat', '-5, -2, -3')
Tento řádek definuje ID kategorií, které chcete z RSS feedu odstranit. Tím se vracíme na začátek článku, že si nejprve musíte tyto ID zjistit. Jakmile je bude znát, pak v tomto snippetu pouze upravte čísla za ID Vašich kategorií. Kód může vypadat např. takto:
function exclude_category($query) {
if ( $query->is_feed ) {
$query->set('cat', '-12, -8, -19');
}
return $query;
}
add_filter('pre_get_posts', 'exclude_category');
Jak odstranit určité kategorie WordPressu z RSS feedu
Závěr
Jakmile tento snipet vložíte do webu, uložte jej a nezapomeňte jej také aktivovat. Pokud bude plugin aktivní, vyřadí z Vašeho RSS Feedu přesně ty kategorie, které tam z nějaké důvodu mít nechcete.
FAQ – Snippety ve WordPressu
Snippety jsou malé úryvky kódu nebo funkcí, které mohou být vloženy do WordPressu pro úpravy vzhledu, chování nebo funkcí stránek.
Existuje několik způsobů, jak vložit Snippet do WordPressu. Nejpoužívanější je použití pluginů jako „WPCode“ nebo editace souborů jako functions.php v motivu.
Používání Snippetů vyžaduje opatrnost. Neověřené kódy z neznámých zdrojů mohou ohrozit bezpečnost, nebo funkcionalitu webu. Je důležité používat Snippety pouze z důvěryhodných zdrojů.
Ano, můžete vytvářet vlastní Snippety přizpůsobené potřebám vašeho webu. Můžete psát vlastní kód, nebo upravovat existující Snippety dle potřeby.
Pluginy jako „WPCode“ poskytují uživatelsky přívětivé rozhraní pro správu Snippetů. Můžete je aktivovat, deaktivovat, editovat, nebo mazat přímo z administračního rozhraní WordPressu.
Web je vytvářen s pečlivostí k obsaženým informacím. Snažím se poskytovat kvalitní a užitečný obsah, který ostatním pomáhá, nebo je inspiruje. Pokud jste spokojeni s mou prací a chtěli byste mě podpořit, můžete to udělat prostřednictvím jednoduchých možností.
Byl pro Vás tento článek užitečný?
Klikni na počet hvězd pro hlasování.
Průměrné hodnocení. 0 / 5. Počet hlasování: 0
Zatím nehodnoceno! Buďte první
Je mi líto, že pro Vás nebyl článek užitečný.
Jak mohu vylepšit článek?
Řekněte mi, jak jej mohu zlepšit.
Odebírejte Newsletter
Buďte v obraze! Připojte se k odběru newsletteru a buďte první, kdo získá nejnovější informace přímo do vaší e-mailové schránky. Sledujte aktuality, exkluzivní události a inspirativní obsah, přímo na Vašem e-mailu.