Vergroot het verkeer naar je blog met een RSS-feed: Hoe RSS/Atom in te stellen met NodeJS

31 okt. 2020

Schrijven voor mijn blog is erg leuk, ik ontvang berichten van over de hele wereld over de dingen die ik leuk vind. Het verkeer groeit, elke maand vinden meer lezers hun weg naar mijn blog. Deze week ontving ik een verzoek om RSS-feeds op mijn blog te ondersteunen. Ik vroeg me af, zijn RSS-feeds vandaag de dag nog relevant?

RSS-feeds

Met RSS (of "really simple syndication") kunnen gebruikers en applicaties updates van websites bekijken in een gestandaardiseerd en computerleesbaar formaat. Dit stelt hen in staat om updates van veel verschillende websites te combineren in één nieuwsaggregator, in feite een gepersonaliseerde "krant".

Voordat sociale media enorm populair werden, werden RSS-feeds veel gebruikt om links en content te delen tussen verschillende nieuws- en blogbronnen. Abonneren op de feed van een website is vergelijkbaar met het "volgen van iets" op sociale media, je ontvangt automatisch updates.

Het mooie van RSS is dat het gedistribueerd is, er is geen centrale autoriteit (of groot bedrijf) die de inhoud of het platform beheert.

Afname van RSS-gebruik

Naarmate sociale media RSS-feeds in populariteit hebben overtroffen, is de ondersteuning voor RSS afgenomen. Platformen zoals Twitter en Facebook stellen individuele, eenvoudige gebruikers in staat om content te delen. Dit is veel eenvoudiger dan het opzetten van een blog met een bijbehorende RSS-feed. Het grootste deel van de sociale media-content wordt vervolgens gemodereerd en gefilterd door algoritmen, gekoppeld aan advertenties, om er een geld genererend massamediaplatform van te maken.

Heropleving van de e-mailnieuwsbrief

Toen Google Reader zijn deuren sloot, verloren sommige bloggers 6.500 RSS-abonnees van de ene op de andere dag! Als je nadenkt over het onderhouden van contact met je publiek, is e-mail logisch. Voor de meesten van ons is e-mail verweven met onze dagelijkse routines. We controleren het regelmatig en hebben toegang tot onze mail vanaf onze mobiele apparaten. Als het goed wordt gedaan, is het versturen van e-mailnieuwsbrieven een haalbare manier om in contact te blijven met je publiek. Het is geen verrassing dat mensen dit beschrijven als een renaissance van de nieuwsmedia.

Waarom nog steeds RSS-feeds gebruiken?

In het tijdperk van sociale media en de heropleving van nieuwsbrieven kun je je afvragen waarom je nog steeds RSS-feeds zou ondersteunen? Ik denk dat de belangrijkste reden is dat het heel weinig moeite kost om het goed te doen, en het (nog steeds) waarde biedt.

Mensen, maar misschien nog belangrijker, computers kunnen RSS-feeds gebruiken om automatisch updates van je blog op te halen. Populaire nieuwsbrief software kan RSS gebruiken om het proces van het maken van nieuwsbrieven te automatiseren. Door RSS op je blog te ondersteunen, maak je het voor anderen gemakkelijker om nieuwsbrieven voor jou te versturen.

Wist je dat andere mensen RSS-feeds gebruiken om automatisch te tweeten over jouw content met behulp van moderne services zoals IFTTT (if this then that)? Je zou dit artikel moeten bekijken. Kortom, RSS is een geweldige manier om contentautomatisering te ondersteunen. Zelfs als jij dit niet van plan bent te doen, zou je moeten overwegen om anderen te ondersteunen bij hun inspanningen door RSS te ondersteunen.

Hetzelfde geldt voor software zoals narrowcasting (of digital signage), waarbij koppen automatisch van je website kunnen worden opgehaald. RSS-feeds worden breed ondersteund door digital signage software om nieuwsteksten te genereren.

Met moderne RSS-reader apps zoals Feedly kunnen normale gebruikers veel van de problemen van de originele RSS-reader apps overwinnen: overweldigende informatie-overload. Op dit moment bedienen ze een niche omdat ze minder populair zijn dan sociale media, maar deze niche kan een belangrijke zijn (kwantiteit versus kwaliteit). Misschien is er ooit wel een RSS-feed renaissance, net als de e-mailnieuwsbrieven.

Moderne RSS-reader apps bieden geavanceerde functies om verschillende feeds te filteren en te organiseren - waardoor je een soort ZEN informatie-overload meester wordt .... of zoiets

RSS-ondersteuning toevoegen aan je blog

Als je blogt met populaire blogsoftware, zoals WordPress, is de kans groot dat je al RSS-ondersteuning ingebouwd hebt. Probeer "/feed" toe te voegen aan het adres van je blog, het kan automatisch verschijnen. Goed voor je! Als je aangepaste blogsoftware gebruikt, zoals ik, moet je mogelijk zelf RSS-feeds implementeren.

Zelf RSS-ondersteuning implementeren

Technisch gezien is RSS niets meer dan een dialect van XML. Het is een bestand dat je content op een gestandaardiseerde, gestructureerde manier bevat. De RSS-specificatie is openbaar en bevat weinig geheimen, omdat het goed gedocumenteerd is.

Deze blog wordt beheerd met behulp van aangepaste software die ik heb ontwikkeld voor mijn klanten. Mijn software genereert zogenaamde "statische HTML-pagina's" vanuit een dynamisch beheerde back-end die op NodeJS draait. Dit betekent dat ik een manier moest vinden om de RSS-feeds te genereren vanuit mijn statische sitegenerator, samen met de HTML-bestanden. Nu is het tijd om technisch te worden! :-)

De populaire NodeJS module "feed" maakt content syndicatie eenvoudig en intuïtief

Het is altijd een goed idee om bestaande implementaties van open standaarden te bekijken voordat je het wiel opnieuw gaat uitvinden. De kans is groot dat iemand al het harde werk heeft gedaan. Maar bovendien kan het kiezen van een goed getest pakket boven een zelfgebouwde implementatie (met onontdekte bugs en fouten) een slimme zet zijn. Voor NodeJS is er de "Feed" module die het gemakkelijk maakt om RSS-, Atom- en JSON-feeds te genereren.

RSS, Atom en JSON feeds implementeren op mijn blog met NodeJS en de Feed module

Met behulp van de Feed-module heb ik een functie toegevoegd aan mijn statische sitegenerator genaamd "generateFeeds()" die de code implementeert die nodig is om RSS-, Atom- en JSON-feeds te genereren. De belangrijkste functie is het mappen van de verschillende velden zoals gespecificeerd in de RSS-feedstructuur naar die van het objectmodel van mijn website. Het is niet moeilijk om het goed te doen als je al een degelijk objectmodel hebt met verwijzingen naar velden zoals een afbeeldings-URL, de titel van een bericht en de publicatiedatum.

NGINX configureren om veelvoorkomende feed URL's te redirecten naar de gegenereerde RSS bestanden

Ik dacht dat het een goed idee zou zijn om mijn webserver, NGINX, zo in te stellen dat algemene feed-URL's automatisch worden omgeleid naar de gegenereerde RSS-bestanden. Op deze manier is mijn aangepaste RSS-implementatie gemakkelijker te ontdekken door andere mensen en computers; omdat het het gedrag van populaire blogsoftware nabootst.

Je kunt het resultaat zelf bekijken met behulp van een van de volgende URL's:

https://willem.com/feed/

https://willem.com/blog/feed/

https://willem.com/blog/feed.rss (RSS)

https://willem.com/blog/feed.atom (Atom)

https://willem.com/blog/feed.json (JSON)

Conclusie

Soms is het zinvol om de technologie van weleer opnieuw te bekijken. Hoewel RSS-feeds misschien niet zo populair zijn als vroeger, kunnen ze nog steeds waarde toevoegen aan je blog.

Omdat het implementeren van een RSS-feed eenvoudig is en het onderhoud ervan volledig geautomatiseerd kan worden, is er eigenlijk geen reden waarom je het niet zou moeten overwegen om het aan je blog toe te voegen. Als bonus ben je klaar voor de volgende renaissance!