668 145 480 info@jacekjagusiak.pl

Dziś chciałem wykluczyć jedną z kategorii WordPressa z wyświetlania wpisów w kanale RSS. Poszukałem nieco po necie, ale jakoś nie wpadła mi w ręce żadna wartościowa informacja na ten temat. To co znalazłem było zazwyczaj szczątkowymi informacjami na ten temat, więc postanowiłem zebrać to w jedną całość i stworzyć niewielki poradnik o tym jak wykluczyć kategorie w WordPress z kanału RSS.

Zmiana adresu dla Feed

To pierwsza metoda i wydaje się być tą najłatwiejszą, zwłaszcza dla początkujących użytkowników WordPressa. W domyślnej skórce link do kanału RSS wygląda tak:

<a href="<?php bloginfo('rss2_url'); ?>">Entries (RSS)</a>

Dzięki lekkiej modyfikacji możemy wykluczyć każdą kategorię wystarczy znać ich identyfikatory, ID.

 

<a href="<?php bloginfo('url'); ?>/feed?cat=-3&cat=-12">Entries (RSS)</a>

 

Aby poznać identyfikatory kategorii musicie wejść do Panelu Administracyjnego, znaleźć zakładkę Wpisy i po jej rozwinięciu macie kategorie. Po włączeniu jednej z nich do edycji na górze w pasku adresu można łatwo wyszukać ID. Poszukajcie tam właśnie tej zmiennej. W poniższym przykładzie podkreśliłem ją na czerwono.

edit-tags.php?action=edit&taxonomy=category&tag_ID=68&post_type=pos

 

Wykluczanie kategorii poprzez edycję pliku FUNCTIONS.PHP

Ten sam rezultat można uzyskać dodając kilka linijek kody do szablonu, którego aktualnie używamy. Głównie do pliku z funkcjami motywu: functions.php

function myFeedExcluder($query) {
 if ($query->is_feed) {
 $query->set('cat','-12'); 
 } return $query; } 
add_filter('pre_get_posts','myFeedExcluder');

Powyższy kod będzie trzymał z dala kategorie o id równym 12 z naszego RSS’a. Jeśli chcemy usunąć więcej niż jedną kategorię to wystarczy je dodawać kolejno po przecinku.

Wykluczanie za pomocą wtyczki Ultimate Category Excluder

Jeśli w ogóle nie chcecie grzebać w kodzie WordPress czy szablonu to możecie użyć wtyczki Ultimate Category Excluder. Pozwala ona usunąć dowolną kategorię czy to ze strony głównej czy tak jak to w naszym przypadku z RSS’a. Po zainstalowaniu pluginu musimy przejść do Ustawień, znaleźć w nich Ultimate Category Excluder i zaznaczyć opcję odpowiadające Naszym wymaganiom.

Wszystkie metody prezentowane powyżej są dobre i funkcjonalne o ile naprawdę zależy nam na wyrzuceniu czegoś z kanałów rss. Jednak jak dla mnie najlepszą metodą jest ich rozbicie na konkretne kategorie. Czyli oddzielny kanał dla oddzielnej kategorii tak, aby czytelnicy mogli jedynie śledzić te tematy, które ich autentycznie interesują.

<a href="https://domena.pl/feed?cat=-2">Sybskrybuj kategorie 1</a>
<a href="https://domena.pl/feed?cat=-1">Sybskrybuj kategorie 2</a>
Rate this post
Rate this post