Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
Puchar WPB
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

Jak utworzyć osobny kanał RSS dla każdego własnego typu treści w WordPress?

Uwaga redakcyjna: Otrzymujemy prowizję z linków partnerskich na WPBeginner. Prowizje nie mają wpływu na opinie i oceny naszych redaktorów. Dowiedz się więcej o Proces redakcyjny.

Czy chcesz utworzyć osobny kanał RSS dla każdego niestandardowego typu treści na twojej witrynie internetowej WordPress?

Własne typy treści umożliwiają właścicielom witryn internetowych dodawanie własnych unikatowych typów treści. Te typy treści mogą mieć funkcje podobne do wpisów lub stron, w tym kanał RSS.

W tym artykule pokażemy, jak łatwo utworzyć osobny kanał RSS dla własnych typów treści w WordPress.

Making RSS feed for custom post types in WordPress

Tworzenie oddzielnych kanałów RSS dla własnych typów treści w WordPressie

Domyślnie WordPress generuje kilka kanałów RSS dla twojej witryny internetowej.

Na przykład, wszystkie twoje ostatnie wpisy na blogu pojawiają się na głównym kanale RSS twojej witryny. Dostęp do tego kanału można uzyskać, dodając /feed/ do nazwy twojej domeny w następujący sposób:

https://example.com/feed/

Większość początkujących użytkowników nie wie, że WordPress generuje osobne kanały RSS dla różnych archiwalnych stron witryny internetowej.

Na przykład, ma oddzielne kanały RSS dla kategorii, tagów, autorów i niestandardowych typów treści.

Załóżmy, że masz własny typ treści o nazwie filmy na twojej witrynie internetowej. Możesz zobaczyć wszystkie treści utworzone w tym typie treści, przechodząc na stronę archiwum typów treści:

https://example.com/movies

Example of a custom post type archive page

Aby zobaczyć kanał RSS, wystarczy dodać /feed/ obok adresu URL archiwum niestandardowego typu treści.

https://example.com/movies/feed/

Custom post type RSS feed in WordPress

Alternatywnie, możesz zobaczyć kanał dodając parametr typu treści do twojego głównego kanału RSS WordPress. Na przykład:

https://example.com/feed/?post_type=movies

Ten adres URL będzie wtedy pobierał tylko własny typ treści o nazwie filmy.

Alternate custom post type RSS feed URL

Dodaj odnośnik do kanału RSS własnego typu treści.

Teraz, gdy już wiesz, jak uzyskać dostęp do kanałów RSS dla dowolnego niestandardowego typu wpisu w witrynie internetowej WordPress, możesz użyć tego adresu URL, aby utworzyć odnośniki do niestandardowych kanałów typu treści.

Na przykład, możesz chcieć wyświetlić ikonkę lub zwykły odnośnik tekstowy na stronie archiwum własnego typu treści, aby twoi klienci mogli łatwo subskrybować te wpisy.

1. Dodawanie odnośnika do kanału RSS własnego typu treści w motywach blokowych

Jeśli korzystasz z motywu blokowego z pełną pomocą techniczną edycji witryny, oto jak dodasz odnośnik.

Po pierwsze, musisz dodać własny fragment kodu do swojej witryny internetowej WordPress za pomocą wtyczki WPCode.

Uwaga: Istnieje również darmowa wersja WPCode, której można użyć do dodania tego fragmentu kodu.

Najpierw należy zainstalować i włączyć wtyczkę WPCode, a następnie przejść do strony Code Snippets ” + Add New Snippet.

Add new snippet

Następnie kliknij przycisk „Użyj fragmentu kodu” znajdujący się pod opcją „Dodaj swój konfigurator (nowy fragment kodu)”.

Na następnym ekranie podaj nazwę twojego fragmentu kodu. Może to być cokolwiek, co pomoże ci zidentyfikować fragment kodu. Następnie wybierz „PHP Snippet” jako rodzaj kodu.

Na koniec dodaj następujący kod w polu Podgląd kodu:

    if (is_post_type_archive('movies')) {
            $post_type = get_queried_object();
            // Get RSS Feed URL
            $rss_feed_url = get_post_type_archive_feed_link($post_type->name);
            // Output the shortcode content
            return '<p>Subscribe to <a href="' . esc_url($rss_feed_url) . '">' . $post_type->label . '</a></p>';
        }
    }
// Register the shortcode
add_shortcode('custom_post_type_rss_link', 'custom_post_type_rss_link_shortcode');

Nie zapomnij zastąpić „movies” nazwą twojego własnego konfiguratora typu treści.

Oto jak wyglądałoby to jako fragment kodu we wtyczce WPCode:

Adding custom code for RSS feed link

Teraz włącz przełącznik „Aktywny” i „Zapisz/Zaktualizuj” twój fragment kodu.

Ten kod automatycznie wykrywa, czy użytkownik zobaczył określoną stronę archiwum niestandardowego typu treści, a następnie wyświetla odnośnik do subskrypcji.

Następnie tworzy krótki kod, którego możesz użyć w twoim motywie blokowym lub widżetach, aby wyświetlić odnośnik.

Następnie należy przejść na stronę Wygląd ” Edytor, aby uruchomić edytor witryny. Następnie wybierz opcję Szablony ” Archiwum z menu po lewej stronie.

Edit Archive template in Site Editor

Następnie dodaj blok Shortcode w miejscu, w którym chcesz wyświetlić odnośnik do kanału RSS.

Najlepiej byłoby wyświetlić go u góry, tuż pod nazwą archiwum.

Add shortcode block

Wewnątrz bloku Shortcode należy dodać następujący krótki kod:

[custom_post_type_rss_link]

Następnie nie zapomnij zapisać twoich zmian.

Możesz teraz przejść na stronę archiwum twojego niestandardowego typu treści, aby zobaczyć odnośnik kanału RSS w działaniu.

RSS feed link preview

2. Dodawanie odnośnika do kanału RSS własnego typu treści w motywach klasycznych

Najprostszym sposobem na to jest utworzenie osobnego szablonu dla własnego typu treści w twoim motywie WordPress.

Połącz się ze swoją witryną internetową WordPress za pomocą klienta FTP i przejdź do katalogu /wp-content/themes/your-current-theme/.

Teraz, jeśli twój własny typ treści nazywa się filmy, możesz utworzyć plik archive-{post_type}.php w katalogu motywu WordPress.

Następnie wystarczy skopiować treść z szablonu archive.php twojego motywu i rozpocząć konfigurowanie nowego szablonu.

Możesz po prostu dodać zwykły odnośnik HTML do twojego archiwum typu treści, używając poniższego kodu:

<p><strong>Subscribe to: <a href="https://example.com/movies/feed/">Movies</a></strong></p>

Nie zapomnij zmienić adresu URL na adres URL twojego kanału typu treści.

Problem z tym kodem polega na tym, że będziesz musiał utworzyć nowy plik szablonu tylko dla tego konkretnego typu treści.

Ta następna metoda pozwoli ci dynamicznie wygenerować odnośnik do kanału RSS typu treści dla wszystkich twoich stron archiwum.

Wystarczy dodać następujący kod do pliku archive.php szablonu twojego motywu.

<?php if ( is_post_type_archive() ) { 
$post_type = get_post_type( get_queried_object_id() );?> 
				<p><strong>Subscribe to: <a href="<?php echo get_post_type_archive_link( $post_type  ); ?>feed/"><?php post_type_archive_title(); ?></a></strong></p>
<?php } ?>		

Ten kod po prostu doda odnośnik poniżej tytułu strony archiwum typu treści, zachęcając użytkowników do subskrypcji tego konkretnego typu treści.

Dodatkowa wskazówka: Dodaj własny typ treści do głównego kanału RSS

Kanały RSS własnego typu treści nie są łatwo wykrywalne przez czytniki kanałów, a większość klientów może łatwiej znaleźć kanał RSS twojej witryny.

Oznacza to, że klienci subskrybujący twój główny kanał RSS przegapią treści publikowane w twoim dostosowanym typie treści.

Możesz to łatwo poprawić, dodając treść z własnego typu treści, aby pojawiała się w głównym kanale RSS Twojej witryny.

Aby to zrobić, musisz dodać niestandardowy fragment kodu do swojego bloga WordPress. Zalecamy użycie WPCode do dodawania własnych fragmentów kodu w WordPress.

Najpierw należy zainstalować i włączyć darmową wtyczkę WPCode. Więcej szczegółów można znaleźć w naszym artykule na temat instalacji wtyczki WordPress.

Po włączeniu wtyczki przejdź na stronę Code Snippets ” + Add Snippet z panelu bocznego administratora WordPress.

W tym miejscu należy kliknąć przycisk „Użyj fragmentu kodu” pod opcją „Dodaj swój konfigurator (nowy fragment kodu)”.

Add new snippet

Zostaniesz teraz przekierowany na stronę „Create Custom Snippet”, gdzie możesz zacząć od wpisania rodzaju nazwy dla twojego fragmentu kodu.

Nazwa ta nie będzie nigdzie wyświetlana i służy jedynie do celów identyfikacyjnych.

Następnie wybierz opcję „Fragment kodu PHP” z rozwijanego menu „Rodzaj kodu” po prawej stronie.

Snippet title and code type

Następnie możesz dodać swój własny fragment kodu.

Wystarczy skopiować i wkleić poniższy kod w polu Podgląd kodu:

function myfeed_request($qv) {
    if (isset($qv['feed']) && !isset($qv['post_type']))
        $qv['post_type'] = array('post', 'movies', 'books');
    return $qv;
}
add_filter('request', 'myfeed_request');

Po dodaniu kodu wpisz nazwę własnego typu treści obok miejsca, w którym wpisano „[’post_type’]”. W naszym przykładzie mamy „wpis”, „filmy” i „książki”.

Ten własny typ treści zostanie dodany do Twojego głównego kanału RSS WordPress.

Add code snippet

Następnie należy przewinąć do góry strony i przełączyć przełącznik „Nieaktywne” na „Aktywne”.

Na koniec nie zapomnij kliknąć przycisku „Zapisz fragment kodu”, aby zapisać i wykonać kod na twojej witrynie internetowej WordPress.

Save snippet

To wszystko, twoja treść niestandardowego typu treści zostanie teraz dodana do głównego kanału RSS witryny.

Mamy nadzieję, że ten artykuł pomógł ci dowiedzieć się, jak utworzyć osobny kanał RSS dla własnych typów treści w WordPress. Zachęcamy również do zapoznania się z naszym poradnikiem na temat optymalizacji kanałów RSS w WordPressie oraz wyborem najlepszych wtyczek RSS do WordPressa.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

Ujawnienie: Nasze treści są wspierane przez czytelników. Oznacza to, że jeśli klikniesz na niektóre z naszych linków, możemy otrzymać prowizję. Zobacz jak WPBeginner jest finansowany, dlaczego to ma znaczenie i jak możesz nas wspierać. Oto nasz proces redakcyjny.

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

Najlepszy zestaw narzędzi WordPress

Uzyskaj BEZPŁATNY dostęp do naszego zestawu narzędzi - zbiór produktów i zasobów związanych z WordPressem, które każdy profesjonalista powinien mieć!

Reader Interactions

30 komentarzyZostaw odpowiedź

  1. Syed Balkhi says

    Hey WPBeginner readers,
    Did you know you can win exciting prizes by commenting on WPBeginner?
    Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
    You can get more details about the contest from here.
    Start sharing your thoughts below to stand a chance to win!

  2. Buddika Wijerathena says

    Is there way to create RSS feed for single page ?
    Ex – example.com/single-post-type/single-post-name

    How to create RSS for this ?

    • WPBeginner Support says

      RSS feeds are for listing multiple posts, the RSS would include a link to the post itself. We would not recommend creating a specific RSS feed for one post or page.

      Administrator

  3. Milan says

    Hey, and do you know any rss wordpress plugin for visitors ? As big new companies have own RSS creator to put rss on some freelancer sites, I want to it same, but not with post but with custom post types….do you know some RSS plugin ?

  4. Tori says

    It still doesn’t work for me – I’m trying to display an RSS Feed for the content on this page –

    and displays the RSS feed for all of my posts. Any thoughts?

      • Tori says

        Thank you for the response. I’m sorry for the confusion as it looks like my links didn’t appear. The posts that appear on that page are custom posts (it’s like the blog roll but for custom posts), but the method to do the RSS feed didn’t work for me. Any thoughts or suggestions?

        • WPBeginner Support says

          Hey Tori,

          If you are certain that the posts belong to a custom post type, then you need to find out the name used by the custom post type. You can do that by clicking on the custom post type menu item in your WordPress admin sidebar. Clicking on it will take you to an admin page listing all the posts in that post type. Now if you look into the browser address bar you will see something like this:

          http://www.example.com/wp-admin/edit.php?post_type=your_post_type

          The part that appears after the post_type= is your custom post type name. Now you need to use this to reach the RSS feed URL for that custom post type.

          http://www.example.com/feed/?post_type=your_post_type

          Hope this helps.

    • Tori says

      Thank you for the response. When I do that, I see this error message — any thoughts?

      ______

      This page contains the following errors:

      error on line 2 at column 1: Extra content at the end of the document
      Below is a rendering of the page up to the first error.

  5. Cédric Charles says

    Hi and thanks for this !

    I would like to add custom fields for my custom post type feed (not for the regular posts, only for my custom post type).

    How could I do that ?

    Thanks a lot !

  6. mike says

    I’ve gotten this to work but it limits the posts in the rss feed to 10 when I feedburn it. Is there any way to create a full rss feed for custom post types without limiting the quantity of posts it pulls in?

  7. Andrew says

    Hi there. Could you tell me how to create a feed for all post types, so someone can signup to a single RSS feed for all posts on the site, regardless of which post type they are in?

  8. Rems says

    THANK YOU VERY MUCH, i was looking for this info for 2 hours. Glad i found your info. Fu…. taxonomy, where were you?!! aahhh!
    Work so fine now

  9. AlexAmelines says

    it works for me and I love you for it. I created a link to each pos type I’ve got, but in the RSS reader they are all called the same, any way I can affect the title of the feed to reflect the post type?

  10. Alan says

    If I am using a slug re-write for the taxonomy that wouldn’t make a difference and be causing the problem would it? I’ve tried both ways and it doesn’t work either way, with the actual registered taxonomy title or the slug.

  11. Aldi says

    I can’t seem to make that work. It only takes me back to the custom post type archive page again.

    Btw, I use Custom Post Permalinks plugin to allow custom post type permalinks and archive pages. Could that have created the issue??

    Cheers!

    • Aldi says

      Oops, sorry.. it was my theme’s problem. I had an action call to redirect anything that is related to custom post types, thus the redirection of the feeds. But got it fixed now.

Zostaw odpowiedź

Dziękujemy za pozostawienie komentarza. Pamiętaj, że wszystkie komentarze są moderowane zgodnie z naszymi polityka komentarzy, a Twój adres e-mail NIE zostanie opublikowany. NIE używaj słów kluczowych w polu nazwy. Przeprowadźmy osobistą i konstruktywną rozmowę.