In de tutorial Een eigen WordPress Dashboard widget maken heb ik uitgelegd hoe je zelf in een paar stappen een vrij eenvoudige widget met eigen inhoud kan toevoegen aan je WP Admin dashboard. In deze tutorial laat ik je zien hoe je een widget met een RSS-feed maakt.

WordPress verwerkt bijvoorbeeld in de widget WordPress evenementen & nieuws een aantal RSS-feeds met evenementen en het laatste nieuws. Voor dit voorbeeld ga ik de laatste twee posts van de wpsimpel blogpagina, die ik ophaal middels een RSS-feed. Je kan natuurlijk een RSS-feed ophalen van je eigen website, of elke andere willekeurige website met een RSS-feed.

De RSS-feed vinden

De RSS-functie zit standaard in WordPress, en een RSS-feed kan je vinden door /feed achter de URL van je blogpagina van je website te zetten. In het geval van wpsimpel is de RSS-feed URL dus https://wpsimpel.nl/blog/feed/. Als je de URL bezoekt krijg je als het goed is een pagina te zien met XML-code waarin de laatste blogberichten te zien zijn.

wpsimpel RSS-feed

De RSS-feed in een widget plaatsen

De code van de RSS-feed widget is in de basis hetzelfde als die van een eenvoudige tekst-widget, enkel de namen en de inhoud van de functie zijn anders. Let er ook op dat de parameter voor de Widget ID uniek moet zijn, en dus niet hetzelfde als eventuele andere widgets die je al hebt gemaakt.

Voeg onderstaande code toe aan je functions.php bestand of een site-specifieke plugin.

<?php
/**
 * Add a dashboard widget with an RSS feed.
 */
add_action('wp_dashboard_setup', 'add_wpsimpel_rss_widget' );

function wpsimpel_rss_widget() {
	
	$feeds = array(
		array(
			'url'          => 'https://wpsimpel.nl/blog/feed/',
			'items'        => 2, // Show 2 feed items
			'show_summary' => 1, // Show the post excerpt
			'show_author'  => 0, // Show the post author
			'show_date'    => 1, // Show the post date
		),
	);
		
	wp_dashboard_primary_output( 'wpsimpel_rss_widget', $feeds );
}

function add_wpsimpel_rss_widget() {
	
	wp_add_dashboard_widget(
		'wpsimpel_rss_widget', // Widget ID
		__( 'Latest wpsimpel posts', 'your-text-domain' ), // Widget title
		'wpsimpel_rss_widget' // Widget function callback
	);
}

Het resultaat ziet er uit als volgt:

Een WordPress dashboard RSS-feed widget maken

Meerdere feeds tonen in één widget

Voor het ophalen en tonen van een RSS-feed maak je gebruik van de functie wp_dashboard_primary_output() waarin je een array in een array plaatst om de berichten op te halen. Elke array bevat de parameters van een feed. Je kan dus meerdere feeds in één widget plaatsen. De enige array parameter die je in principe nodig hebt is 'url', die dus verwijst naar de URL van de feed.

Wil je dus meerdere feeds in één widget tonen, bijvoorbeeld de laatste twee posts van wpsimpel en de laatste twee nieuwsberichten van nu.nl uit de rubriek ‘Algemeen’, dan ziet je array van feeds er als volgt uit:

$feeds = array(
	// First array (feed)
	array(
		'url'          => 'https://wpsimpel.nl/blog/feed/',
		'items'        => 2, // Show 2 feed items
		'show_summary' => 1, // Show the post excerpt
		'show_author'  => 0, // Show the post author
		'show_date'    => 1, // Show the post date
	),
	// Second array (feed)
	array(
		'url'          => 'https://www.nu.nl/rss/Algemeen',
		'items'        => 2, // Show 2 feed items
		'show_summary' => 1, // Show the post excerpt
		'show_author'  => 0, // Show the post author
		'show_date'    => 1, // Show the post date
	),
);

Extra parameters

Je kan onderdelen van posts verbergen of tonen met parameters. In bovenstaande voorbeelden zijn de parameters 'show_summary', 'show_author' en 'show_date' toegevoegd. Deze parameters zijn echter niet vereist om je feed te laten werken. Je kan ze dus ook gewoon weglaten als je ze niet gebruikt.

Gebruik voor de parameters achter => de waarde 1 (= true) om de parameter te tonen, 0 (= false) om de parameter niet te tonen.

Beoordeel deze post:

Gemiddeld: 0 / 5. Aantal beoordelingen: 0

Nog geen beoordelingen

Whoops! 😔

Zou je ons willen laten weten hoe we (deze post) kunnen verbeteren?