Envato Elements - pobieraj co chcesz, ile chcesz

Dziś, podczas drobnych zmian w drzewku kategorii na jednej ze stron, którą się opiekuję zapytał mnie kolega, który akurat siedział obok (pogaduszki przy czymś chłodnym ;-)) o 2 kategorie, które mam na stronie – „wyklucz z wyszukiwania” i „wyklucz z RSS”. Pytanie oczywiście nie dotyczyło tego do czego te kategorie służą, bo to chyba oczywiste, tylko jak takie coś najprościej wdrożyć.

Wykluczanie wpisów z wyników wyszukiwania i kanału RSS w WordPressie

O samej zabawie kanałem RSS w WordPressie od dawna mam w Trello utworzoną cegiełkę, i mam nadzieję, że niebawem uda się opublikować poradnik na ten temat, bo pomimo upływu lat, i całego „postępu” RSS nadal jest to moim zdaniem najbielszy sposób na śledzenie aktualności na wybranych stronach. Chyba nawet lepszy niż newsletter… Ale w związku z zapytaniem kolegi w pewnym sensie muszę o ten temat zahaczyć dziś.

Jak już wspomniałem – mam (m.in.) 2 kategorie systemowe:

  • Wyklucz z wyszukiwania (ID: 17)
  • Wyklucz z RSS (ID: 21)

Wystarczy, że dowolny wpis dodam do którejś z tych kategorii, a zostanie on automatycznie wykluczony z wyników wyszukiwania i/lub kanały RSS.

Wykluczenie robię na podstawi numerów ID poszczególnych obiektów (w tym przypadku kategorii), co najprościej odczytać w panelu zarządzania WordPressem (WP-Admin) poprzez najechanie kursorem na wybrany element – w adresie URL zazwyczaj będzie identyfikator obiektu:

https://webinsider.pl/wp-admin/term.php?taxonomy=category&tag_ID=21

Za wykluczanie z wyników wyszukiwania odpowiada kod:

function webinsider_wp_exclude_category_from_search( $query ) {      if ( $query->is_search && !is_admin() ) {  		$query->set( 'cat', '-17' ); // 17: Wyklcuz z wyszukiwania  	}      return $query;  }  add_filter( 'pre_get_posts', 'webinsider_wp_exclude_category_from_search' );

Za wykluczanie z kanału RSS odpowiada kod:

function webinsider_wp_exclude_category_from_rss( $query ) {  	if ( $query->is_feed ) {  		$query->set( 'cat', '-21' ); // 21: Wyklucz z RSS  	}  	return $query;  }  add_filter( 'pre_get_posts', 'webinsider_wp_exclude_category_from_rss' );

Możemy też wykluczenia dokonać po tagach zamiast kategorii. Jednym:

$query->set( 'tag', '-4' );

Lub kilku:

$query->set( 'tag', '-4, -8' );

Możemy też wykluczenia dokonać np. po autorze:

$query->set( 'author', '-3' );

Kod możemy wstawić czy to do własnej wtyczki, czy do pliku functions.php, oczywiście motywu potomnego…

(!) Zgłoś błąd na stronie
Potrzebujesz profesjonalnej pomocy? Skontaktuj się z nami!
Spodobał Ci się artykuł? Zapisz się do naszego Newslettera - ZERO SPAMu, same konkrety, oraz dostęp do dodatkowych materiałów przeznaczonych dla subskrybentów!
Na podany adres e-mail otrzymasz od nas wiadomość e-mail, w której znajdziesz link do potwierdzenia subskrypcji naszego Newslettera. Dzięki temu mamy pewność, że nikt nie dodał Twojego adresu przez przypadek. Jeśli wiadomość nie przyjdzie w ciągu najbliższej godziny (zazwyczaj jest to maksymalnie kilka minut) sprawdź folder SPAM.
Janusz i Janusz zapisali się do Newslettera WebInsider.pl i... sobie chwalą
WebInsider poleca księgowość wFirma
WebInsider korzysta z VPSa w HitMe.pl
WebInsider poleca VPSy DigitalOcean
WebInsider poleca serwis Vindicat
Napisz komentarz
wipl_napisz-komentarz_01Jeśli informacje zawarte na tej stronie okazały się pomocne, możesz nam podziękować zostawiając poniżej swój komentarz.

W tej formie możesz również zadać dodatkowe pytania dotyczące wpisu, na które – w miarę możliwości – spróbujemy Ci odpowiedzieć.
Linki partnerskie
Niektóre z linków na tej stronie to tzw. „linki partnerskie”, co oznacza, że jeśli klikniesz na link i dokonasz wymaganej akcji (np. zakup/rejestracja) możemy otrzymać za to prowizję. Pamiętaj, że polecamy tylko te produkty i usługi, z których sami korzystamy, i uważamy, że są tego na prawdę warte… :-)
Znaki towarowe i nazwy marek
W niektórych wpisach (oraz innych miejscach na stronie) mogą być przedstawione/użyte znaki towarowe i/lub nazwy marek, które stanowią własność intelektualną tych podmiotów, a zostały użyte wyłącznie w celach informacyjnych.
Księgowość internetowa wFirma 80% taniej dla czytelników WebInsider.pl