Content Marketing

WordPress: Hírcsatornák közzététele a blogon minden kategóriához

Alapértelmezés szerint a WordPress blogoknak van egy hírcsatornája, amely az összes bejegyzést tartalmazza, kategóriától függetlenül. A webhely látogatóinak személyre szabásának és szegmentálásának javításának egyik módja, ha engedélyezi a RSS az érdeklődési kategóriáiknak megfelelő takarmányt. Használhat kategóriaspecifikusat is hírfolyam e-mailes hírlevél közzétételéhez. Azonban, ha szeretné, létrehozhat egyéni kategória-hírcsatornákat a WordPress blogjához vagy egyéni bejegyzéstípusokhoz.

WordPress kategória hírcsatornák

Here’s code that you can add to your gyerek téma functions.php fájl, amely kategória-specifikus RSS-hírcsatornákat hoz létre a WordPressben a kategóriaazonosítók felvételi és kizárási listáival:

function custom_category_feeds() {
    $categories = get_categories();

    // Define an array of category IDs to include and exclude
    $included_category_ids = array(3, 4); // Add IDs of categories to include
    $excluded_category_ids = array(1, 2); // Add IDs of categories to exclude

    foreach ($categories as $category) {
        $category_id = $category->term_id;

        // Check if the category should be excluded
        if (in_array($category_id, $excluded_category_ids)) {
            continue; // Skip excluded categories
        }

        // Check if the category should be included
        if (!empty($included_category_ids) && !in_array($category_id, $included_category_ids)) {
            continue; // Skip categories not in the inclusion list
        }

        $category_slug = $category->slug;
        $category_name = $category->name;

        // Start building the RSS feed content
        $rss_feed = '<?xml version="1.0" encoding="UTF-8" ?>' . "\n";
        $rss_feed .= '<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">' . "\n";
        $rss_feed .= '<channel>' . "\n";
        $rss_feed .= '<title>' . $category_name . ' RSS Feed</title>' . "\n";
        $rss_feed .= '<link>' . get_bloginfo('url') . '</link>' . "\n";
        $rss_feed .= '<description>' . $category_name . ' RSS Feed</description>' . "\n";
        $rss_feed .= '<atom:link href="' . esc_url(site_url("/category/$category_slug/feed/")) . '" rel="self" type="application/rss+xml" />' . "\n";

        // Query posts in the current category
        $args = array(
            'cat' => $category_id,
            'posts_per_page' => 10, // Adjust as needed
        );
        $category_posts = new WP_Query($args);

        while ($category_posts->have_posts()) {
            $category_posts->the_post();
            $rss_feed .= '<item>' . "\n";
            $rss_feed .= '<title>' . get_the_title() . '</title>' . "\n";
            $rss_feed .= '<link>' . get_permalink() . '</link>' . "\n";
            $rss_feed .= '<pubDate>' . get_the_time('D, d M Y H:i:s O') . '</pubDate>' . "\n";
            $rss_feed .= '</item>' . "\n";
        }

        wp_reset_postdata();

        $rss_feed .= '</channel>' . "\n";
        $rss_feed .= '</rss>';

        // Output the feed
        header('Content-Type: application/rss+xml; charset=UTF-8');
        echo $rss_feed;
    }
}

add_action('do_feed_category', 'custom_category_feeds', 10, 1);
add_action('do_feed_category_rss2', 'custom_category_feeds', 10, 1);

Íme a kód magyarázata:

  • Funkciónyilatkozat: A kód egy nevű függvényt határoz meg custom_category_feeds.
  • Kategória felvételi és kizárási listák:
    • Két tömb van meghatározva:
      • $included_category_ids: Ez a tömb tartalmazza azokat a kategóriaazonosítókat, amelyeket fel szeretne venni a hírcsatornákba.
      • $excluded_category_ids: Ez a tömb tartalmazza azokat a kategóriaazonosítókat, amelyeket ki szeretne zárni a hírcsatornákból.
  • Hurok a kategóriákon keresztül: A kód használ get_categories() az összes kategória listájának lekéréséhez.
  • Kizárási lista ellenőrzése: Minden kategória esetében ellenőrzi, hogy a kategóriaazonosító szerepel-e a $excluded_category_ids sor. Ha igen, a kód a következő kategóriába lép (kizárja).
  • Felvételi lista ellenőrzése: Ezután ellenőrzi, hogy a kategória szerepeljen-e. Ha a $included_category_ids A tömb nem üres, és a kategóriaazonosító nincs ebben a tömbben, a kód a következő kategóriába lép (kizárja a felvételből).
  • RSS feed tartalom generálása: A kód továbbfejleszti az RSS-hírcsatorna tartalmát azokhoz a kategóriákhoz, amelyek megfelelnek a felvételi és kizárási ellenőrzéseken. Az RSS-hírcsatorna tartalom generálására szolgáló kód nem látható, de hasonlónak kell lennie az előző példákhoz.
  • A hírfolyam kiadása: Végül beállítja a megfelelő tartalomtípust az RSS-hírfolyamhoz, és visszhangozza az RSS-hírcsatorna tartalmát.

    Ennek a kódnak a legfontosabb jellemzője, hogy megadhat egy felvételi listát és egy kizárási listát is a kategóriaazonosítókról, így Ön pontosan szabályozhatja, hogy mely kategóriák szerepeljenek vagy zárjanak ki a generált kategóriaspecifikus RSS-hírcsatornákban.

    Az Ön WordPress kategória hírcsatornája

    A felhasználók használhatják a URL korábban biztosított struktúrát a WordPressben létrehozott egyéni kategóriaspecifikus hírcsatorna eléréséhez. A kategória-specifikus feed eléréséhez szükséges URL-formátum a következő:

    http://yourwebsite.com/category/{category-name}/feed/

    Íme a hírcsatorna hívásának lebontása:

    1. Cserélje yourwebsite.com a webhely tényleges domainjével vagy URL-jével.
    2. Csere {category-name} annak a kategóriának a slugjával, amelyhez hozzá szeretne férni a hírfolyamhoz. A slug a kategória nevének kisbetűs, kötőjellel elválasztott változata. Például, ha a kategória neve Marketing tippek, a csiga lehet marketing-tippek.
    3. hozzáad /feed/ az URL végére. Ez azt jelzi, hogy az adott kategória RSS- vagy Atom-hírcsatornájához szeretne hozzáférni.

    Például, ha webhelye „example.com”, és szeretne hozzáférni a „Marketingtippek” kategória hírcsatornájához, az URL a következő lesz:

    http://example.com/category/marketing-tips/feed/

    A felhasználók beírhatják ezt az URL-t a webböngészőjükbe, vagy hírfolyam-olvasó alkalmazásokkal feliratkozhatnak a kategória-specifikus hírfolyamra. Ez az URL biztosítja számukra a kiválasztott kategória RSS- vagy Atom-hírcsatornáját, megkönnyítve számukra, hogy naprakészek maradjanak az adott kategória tartalmával kapcsolatban.

    Douglas Karr

    Douglas Karr CMO of OpenINSIGHTS és az alapítója a Martech Zone. Douglas több tucat sikeres MarTech startupnak segített, több mint 5 milliárd dolláros átvilágításban segédkezett a Martech akvizíciókban és befektetésekben, és továbbra is segíti a vállalatokat értékesítési és marketingstratégiáik megvalósításában és automatizálásában. Douglas nemzetközileg elismert digitális átalakulás és MarTech szakértő és előadó. Douglas egy Dummie's Guide és egy üzleti vezetői könyv szerzője is.

    Kapcsolódó cikkek

    Vissza a lap tetejére gombra
    közel

    Adblock észlelve

    Martech Zone ingyenesen tudja biztosítani Önnek ezt a tartalmat, mivel webhelyünkkel bevételt szerezünk hirdetési bevételek, társult linkek és szponzorálás révén. Nagyra értékelnénk, ha eltávolítaná hirdetésblokkolóját, miközben megtekinti webhelyünket.