Jak usunąć FEED (RSS) z nagłówka WordPress?

WordPress mimo tego, że jest system do prowadzenia blogów internetowych często jest też używany do prowadzenia stron firmowych albo prywatnych, na których niekoniecznie chcemy udostępniać kanał RSS, chociażby z powodu rzadkich aktualizacji.

Linki /feed/ dodawane są przez funkcję wp_head(), która najczęściej znajduje się w header.php (w zależności od szablonu). Można usunąć całe wp_head(), ale może się zdarzyć, że tym samym ograniczymy funkcjonalność WordPress’a, bo wyłączymy np. ładowanie jQuery, albo innych skryptów niezbędnych do działania pluginów.
Takie rozwiązanie zatem odpada.

Innym rozwiązaniem jest zmiana w pliku /wp-includes/feed.php i usunięcie (albo skomentowanie) linijki kodu odpowiedzialnej za feed:

function get_default_feed() {
	//return apply_filters('default_feed', 'rss2');
}

To rozwiązanie ma z kolei taki mankament, że jeśli zaktualizujemy WordPress’a to plik feed.php również zostanie zaktualizowany i będziemy musieli ponownie wykonać powyższą operację usunięcia feed… a kto będzie o tym pamiętał? ;)

Dlatego zdecydowanie najlepszym rozwiązaniem jest znalezione przeze mnie po dobrych paru chwilach poszukiwań i sprawdzaniu różnych opcji – dodanie fragmentu kodu do pliku functions.php, który znajduje się w katalogu z naszym szablonem.
Wystarczy dodać coś takiego:

remove_action( 'wp_head', 'feed_links_extra', 3 ); // Wyświetla linki do dodatkowych feed (np. dla kategorii)
remove_action( 'wp_head', 'feed_links', 2 ); // Wyświetla linki do głównych feed (wpisy i komentarze)

Dzięki temu rozwiązaniu pozbędziemy się niechcianych linków do feed’ów i w przyszłości nie będziemy musieli pamiętać o konieczności zmiany czegokolwiek po aktualizacji WordPressa.

Na podstawie forum WordPress

Ten wpis został opublikowany w kategorii modyfikacje wordpress, wordpress tips and tricks. Dodaj zakładkę do bezpośredniego odnośnika.

Jedna odpowiedź na „Jak usunąć FEED (RSS) z nagłówka WordPress?

  1. max pisze:

    Dzięki za tipa.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

*

Możesz użyć następujących tagów oraz atrybutów HTML-a: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>