Was ist besser als ein RSS-Feed? Benutzerdefinierte RSS-Feeds natürlich! Viele Leute haben den Tod dieser Sharing-Technologie schon seit Äonen vorhergesagt, aber sie ist immer noch stark.
Statistiken zeigen, dass über 2000 der 10.000 weltweit führenden Websites RSS-Feeds religiös veröffentlichen. Feedly, ein beliebter RSS-Feed-Aggregationsdienst, konnte seine Abonnentenbasis in zwei Jahren um 900% und seinen Umsatz um mehr als 400% steigern.
Sie könnten daran interessiert sein, Ihren Besuchern eine angepasste Benutzererfahrung zu bieten, die über Ihren Standard-WordPress-RSS-Feed hinausgeht. Lassen Sie uns untersuchen, wie Sie Ihre Feeds an Ihre Website und Ihr Publikum anpassen können.
Sichern Sie Ihre Website
Sie werden zum Backend Ihrer Website gehen, also sichern Sie Ihre Website. Wenn etwas kaputt geht, sind Ihre Website, Ihr Inhalt und Ihre Einstellungen weiterhin intakt. Vernachlässigen Sie diesen Schritt nicht, egal was passiert!
Außerdem erstellen wir eine neue Vorlagendatei für Ihr WordPress-Thema, sodass Sie möglicherweise zu einem untergeordneten Thema wechseln / es erstellen möchten, um Ihr vorhandenes Thema nicht zu verfälschen.
Erstellen eines benutzerdefinierten RSS-Feeds in WordPress
Zu Beginn arbeiten wir mit der Datei “functions.php” in Ihrem Themenordner. Öffnen Sie es und fügen Sie den folgenden Code ein:
/* This code initializes the custom RSS Feeds for your website*/ add_action( 'init', 'MyCustomRSS' ); function MyCustomRSS(){ add_feed( 'mycustomfeedname', 'MyCustomFeedCallback' ); } /* This code seeks the template for your RSS feed */ function MyCustomFeedCallback(){ get_template_part( 'rss', 'mycustomfeedname' ); // need to be in small case. }
Beachten Sie den Abschnitt, in dem Sie aufgefordert werden, den Namen Ihres benutzerdefinierten RSS-Feeds einzugeben. Halten Sie diesen Namen einfach, damit Sie ihn leicht abrufen können, wenn er Ihre Website-Feed-URL bildet. Beispiel: “https://yoursite.com/feed/mycustomfeedname”.
Hinweis: Der Name Ihres benutzerdefinierten RSS-Feeds darf nur in kleinen Buchstaben angegeben werden.
Erstellen Sie eine benutzerdefinierte RSS-Feeds-Vorlage
Die Vorlage des benutzerdefinierten RSS-Feeds enthält die Informationen, die Ihr Feed benötigt, um Ihren Feed bereitzustellen. Stellen Sie sich das als eine HTML / CSS-Funktion für Ihren Feed vor. Dazu müssen Sie eine andere Datei mit einem eindeutigen Namen erstellen. Dieser Name MUSS der Konvention folgen: “rss-mycustomfeedname.php”.
Speichern Sie diese Datei in Ihrem untergeordneten Themenordner. Öffnen Sie nun diese Datei und fügen Sie den folgenden Code ein:
<?php /** * Template Name: Custom RSS Template - YourCustomFeedName */ $postCount = 10; // The number of posts to show in the feed $postType = 'post'; // post type to display in the feed query_posts( array( 'post_type' => $postType, 'showposts' => $postCount ) ); $charset = get_option( 'blog_charset' ); header( 'Content-Type: ' . feed_content_type( 'rss-http' ) . '; charset=" . $charset, true ); ?><?xml version="1.0" encoding="<?php echo $charset; ?>"?> <rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" <?php do_action("rss2_ns'); ?>> <channel> <title><?php bloginfo_rss( 'name' ); ?> - Feed</title> <atom:link href="<?php self_link(); ?>" rel="self" type="application/rss+xml" /> <link><?php bloginfo_rss('url'); ?></link> <description><?php bloginfo_rss('description'); ?></description> <lastBuildDate><?php echo mysql2date('D, d M Y H:i:s +0000', get_lastpostmodified('GMT'), false); ?></lastBuildDate> <language><?php echo get_option('rss_language'); ?></language> <sy:updatePeriod><?php echo apply_filters( 'rss_update_period', 'hourly' ); ?></sy:updatePeriod> <sy:updateFrequency><?php echo apply_filters( 'rss_update_frequency', '1' ); ?></sy:updateFrequency> <?php do_action('rss2_head'); ?> <?php while(have_posts()) : the_post(); ?> <item> <title><?php the_title_rss(); ?></title> <link><?php the_permalink_rss(); ?></link> <pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', get_post_time('Y-m-d H:i:s', true), false); ?></pubDate> <dc:creator><?php the_author(); ?></dc:creator> <guid isPermaLink="false"><?php the_guid(); ?></guid> <description><![CDATA[<?php the_excerpt_rss(); ?>]]></description> <content:encoded><![CDATA[<?php the_excerpt_rss() ?>]]></content:encoded> <?php rss_enclosure(); ?> <?php do_action('rss2_item'); ?> </item> <?php endwhile; ?> </channel> </rss> <?php // Reset Query wp_reset_query();
Sie können diese Datei so ändern, dass so viele Beiträge angezeigt werden, wie Sie möchten. Verwenden Sie die $postCount
Variable, um die Anzahl der anzuzeigenden Beiträge zu ändern. Die Standardeinstellung zeigt “Beiträge” an. Sie können sie jedoch ändern, um einen anderen Beitragstyp anzuzeigen, indem Sie die $postType
Variable. Die Auszugsfunktion zeigt auch Auszüge für Ihre Beiträge an. Wenn Ihr Beitrag keine Auszüge enthält, werden die ersten 120 Wörter im Artikel angezeigt.
Hinzufügen von Funktionen zu den benutzerdefinierten RSS-Feeds
Nachdem Sie eine funktionale Vorlage haben, können Sie zusätzliche Inhalte hinzufügen.
Show Post Thumbnail in Feeds
Wenn Sie Post-Thumbnails in Ihren Feed aufnehmen möchten, kopieren Sie den folgenden Code und fügen Sie ihn am Ende Ihrer Datei “functions.php” ein.
Wenn Ihr Beitrag ein Miniaturbild enthält, sucht diese Funktion danach und liefert es zusammen mit Ihrem Feed-Text. Wenn es kein Bild hat, tut es nichts.
/*This code adds thumbnail feature to your custom feed*/ add_action( 'rss2_item', 'custom_thumbnail_tag' ); function custom_thumbnail_tag() { global $post; if ( has_post_thumbnail( $post->ID ) ) { $thumbnail = get_attachment_link( get_post_thumbnail_id( $post->ID ) ); echo("<image>{$thumbnail}</image>"); } }
Feed-Sprache einstellen
Manchmal müssen Sie möglicherweise die Sprache für Ihren benutzerdefinierten Feed deklarieren, damit er funktioniert.
Verwenden Sie dazu diesen Code in Ihrer Datei “functions.php”:
function myFeedLanguage(){ update_option( 'rss_language', 'en' ); } add_action( 'admin_init', 'myFeedLanguage' );
Dadurch wird Ihre Sprache auf Englisch konfiguriert. Wenn Sie beabsichtigen, es in eine andere Sprache zu ändern, bearbeiten Sie das en
im Funktionscode zu Ihrer bevorzugten Sprache. Holen Sie sich eine Liste aller Sprachcodes von dieser Link.
Bringen Sie Ihren benutzerdefinierten Feed zum Laufen
Damit Ihr benutzerdefinierter RSS-Feed funktioniert, müssen Sie einen Rewrite Flush auf Ihr WordPress-System anwenden. Alles was Sie tun müssen, ist zu “Einstellungen -> Permalinks” zu gehen und auf “Änderungen speichern” zu klicken.
Einpacken
Ein benutzerdefinierter RSS-Feed ist eine hervorragende Möglichkeit, Ihre Inhalte Personen bereitzustellen, die möglicherweise nicht über genügend Konnektivität verfügen, um auf Ihre vollständige Website zuzugreifen. Es hilft auch neuen Zielgruppen, Sie über RSS-Feed-Apps auf Android und iOS zu entdecken. Sie sollten es unbedingt versuchen.
Bildnachweis: Vereinigte Farben der Feeds