Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord
abonneren

RSS: doe het zelf!

Rss is in opkomst. Op steeds meer sites kom je deze handige headlines tegen. Dankzij dit handige protocol houd je makkelijk greep op de enorme hoeveelheid informatie nieuws die dagelijks verschijnt. In deze praktische workshop gaan we zelf met rss aan de slag en vertellen we u precies hoe u rss-feeds kunt integreren op uw site.

Elke grote website, van de Volkskrant tot Tweakers.net, stelt tegenwoordig een nieuwsfeed beschikbaar. Zo'n feed is niets anders dan een xml-bestand met een vaste structuur. U kunt een dergelijk bestand inlezen in een rss-reader of integreren in een webpagina. Het makkelijke van een rss-feed is dat deze alleen tekst bevat en dat u de opmaak, het lettertype en de kleuren helemaal naar eigen wens kunt aanpassen. Een rss-feed kan de bestandsextensie *.rss, *.xml of *.rdf hebben, maar de werking is in alle gevallen hetzelfde. Rss-feeds maken Het maken van een eigen rss-feed is makkelijker dan u denkt. Hoewel het xml-bestand er op het eerste gezicht ingewikkeld uitziet, is de opbouw verrassend simpel. De meeste weblogtools en contentmanagementsystemen bevatten een module waarmee dit mogelijk is. U kunt het echter ook handmatig doen, met een eenvoudige teksteditor als bijvoorbeeld Notepad. Het handmatig bijwerken van uw rss-feed is afhankelijk van de omvang van uw website en de frequentie waarmee de inhoud wordt aangepast. Bij grote websites is het verstandiger om gebruikt te maken van een tool die de rss-feed automatisch bijwerkt wanneer er nieuwe artikelen en nieuwsberichten op de website verschijnen. Ook dat kan, maar u hebt er wel kennis van php, asp of Perl voor nodig. We leggen beide mogelijkheden uit en gebruiken daarbij de rss-feed van PCMweb als voorbeeld. Op www.pcmweb.nl/rss/index.jsp vindt u het actuele rss-bestand. Handmatig Met de zelfbouwoplossing hebt u in een paar regels code een eigen rss-feed gemaakt. Het xml-bestand begint met de volgende code: <?xml version="1.0" encoding="UTF-8" ?> Deze eerste regels spreken voor zich: we geven aan welke xml- en rss-versie we gaan gebruiken. Er zijn maar liefst negen verschillende rss-versies, maar we hebben hier gekozen voor 0.91, omdat deze het meest wordt gebruikt. In het kader leest u welke andere versies van de rss-specificatie er zijn. Onder het rss-element staat het channel-element, waarvan er in elk rss-0.91-document slechts één aanwezig mag zijn. Een channel is een soort container voor verschillende artikelen. Deze artikelen worden later als item-element gespecificeerd. De volgende regels geven informatie over de rss-feed zelf. In deze code vindt u onder andere de titel van de rss-feed, een link naar de homepage, de taal en eventueel een logo. Met het image-element geeft u aan waar de afbeelding te vinden is en welke afmetingen deze heeft. Personal Computer Magazine RSS Copyright (c) VNU Business Publications, 2004 http://www.pcmweb.nl/ nl Personal Computer Magazine redactie@pcmweb.nl Wed, 17 Nov 2004 08:47:39 GMT http://www.pcmweb.nl/ Personal Computer Magazine http://www.pcmweb.nl/media/pcm_rss.gif 40 78 Personal Computer Magazine Hierna volgen de artikelen, die allemaal volgens hetzelfde patroon zijn opgebouwd: eerst een titel, dan een korte tekst (de zogenaamde teaser) en een link naar het volledige artikel. In rss 0.91 kunt u maximaal 15 artikelen in de lijst opnemen: Bill Gates geef Linux-installatie toe http://www.pcmweb.nl/nieuws.jsp?id=403921 Microsoft-topman Bill Gates heeft toegegeven dat hij in het verleden wel eens Linux op zijn laptop heeft geïnstalleerd. 'Maar ik heb nooit ingelogd', aldus een verontwaardigde Gates. Aan het einde sluit u het xml-bestand met de volgende code af: Dat is alles! U slaat de code op als tekstbestand met extensie *.xml en zet het bestand op een webserver of in de map bij uw provider, waar de bestanden van uw website staan. Of uw rss-feed ook aan de specificaties voldoet, kunt u controleren met Feed Validator (www.feedvalidator.org). Wilt u liever een andere rss-versie gebruiken, dan volgt u dezelfde stappen aan de hand van de specificaties van RSS 1.0 en 2.0 (zie het kader Handige links). Halfautomatisch Wanneer uw website eenmaal een bepaalde omvang heeft bereikt, is een handmatige oplossing niet zinvol meer. Als webmaster van een grote site zou u de hele dag bezig moeten zijn met het bijwerken van de rss-feed. Gelukkig bestaan er betere oplossingen. Een halfautomatische oplossing biedt de website www.webdevtips.com. Daar kunt u in een paar stappen een rss-feed in elkaar klikken. Deze oplossing is vooral geschikt voor mensen die geen xml-ervaring hebben en niet in de code willen duiken. Het resultaat plakt u in een tekstbestand, dat u op de webserver plaatst. Toch komen hier nog wat handmatige werkzaamheden bij kijken, terwijl u het maken van de rss-feeds misschien liever automatisch op de achtergrond wilt laten verlopen, zodat u er geen omkijken meer naar hebt. Ook dat is mogelijk, maar dan moet u wel met php, asp of Perl aan de slag. Automatisch Een geautomatiseerde oplossing is ook mogelijk. Als voorbeeld bespreken we Feed Creator (http://freshmeat.net/projects/feedcreator/), dat vroeger bekendstond als RSSCreator. Dit is een flexibel configureerbaar php-script, dat onder andere rss 0.91, 1.0 en 2.0 en ATOM 0.3 ondersteunt. Feed Creator leest gegevens uit een MySQL-database en genereert op grond daarvan een rss-feed. Bij veel websites zijn de gegevens al in een dergelijke database aanwezig. Het script valt onder de GNU General Public License en is dus vrij te gebruiken en aan te passen. Het gebruik van het tool is heel eenvoudig: in een paar minuten hebt u het script aangepast aan uw behoeften. U download het en opent vervolgens het bestand feedcreator.class.php in een teksteditor als Notepad. Vervolgens voert u de gegevens van uw MySQL-database in en klaar bent u. Mocht er toch iets niet duidelijk zijn, dan kunt u terugvallen op de uitstekende (Engelstalige) documentatie. In het kader 'Scripts voor feeds' vindt u nog meer tools voor het genereren van rss-feeds. Nieuwsportal maken Wilt u liever zelf geen nieuwtjes schrijven, dan kunt u toch zorgen dat uw website altijd actuele nieuwtjes heeft. U integreert gewoon een bestaande rss-feed in uw website. Zo heeft uw website altijd iets te melden, zonder er zelf veel voor te hoeven doen. Hebt u de smaak eenmaal te pakken, dan kunt u zelfs een uitgebreid nieuwsportal maken, waar bezoekers in één oogopslag de headlines van de grote Nederlandse dagbladen, de beste computerbladen of de leukste weblogs kunnen zien. Er zijn verschillende mogelijkheden om dit te realiseren. Met behulp van een scripttaal als php kunt u zorgen dat de xml-bestanden op uw website worden getoond. Eenvoudiger is het echter om een kant-en-klaar hulpmiddel te gebruiken, zoals Zfeeder (http://zvonnews.sourceforge.net). Ook dit is een php-script, dat u echter gemakkelijk kunt aanpassen. Voorwaarde om het tool te kunnen gebruiken is wel dat uw hostingaanbieder php versie 4.2.0 of hoger beschikbaar stelt. De installatie is eenvoudig. Na het downloaden kopieert u de complete map Newsfeeds naar uw webserver. Voor de submap Cache moet u schrijfrechten activeren (chmod 777), net als voor het script config.php en de submap Categories. In het kader Zfeeder leest u hoe u het script admin.php aanpast aan uw wensen. Het aanmaken en wissen van categorieën vraagt nog wel wat aandacht, want op dat punt helpt het admin-script u niet veel verder. U kunt dit handmatig doen door in de submap Categories het bestand emty.opml te zoeken. Dit bestand vormt de basis voor nieuwe categorieën: kopieer en hernoem het bestand om een nieuwe categorie aan te maken. U kunt een categorie verwijderen door het bijbehorende opml-bestand te wissen. Hebt u deze voorbereidingen getroffen, dan kunt u op internet rss-feeds verzamelen en een eigen nieuwsportal samenstellen. Voor de layout kunt u gebruikmaken van verschillende templates, die u in de betreffende submap vindt. Het gaat hierbij om eenvoudige html-bestanden waarin de variabele gegevens worden ingelezen. Wanneer u een nieuw template wilt maken of een bestaand template wilt bewerken, kunt u daarvoor de volgende elementen gebruiken: {chanlogo} channel-logo {chanlink} channel-link {chandesc} channel-beschrijving {chantitle} channel-titel {feedurl} url van de nieuwsfeed {moreurl} url die naar alle nieuws van deze feed verwijst {lasupdated} datum laatste update {scripturl} url van het Zfeeder-script {category} naam van de categorie {link} nieuwslink {pubdate} publicatiedatum {title} titel nieuwsbericht {description} beschrijving van het nieuwsbericht {id} channel/nieuws-id Voor het weergeven van nieuwsfeeds met templates zorgt het script zfeeder.php. Bij het aanroepen daarvan krijgt u alle nieuwsfeeds uit de standaardcategorie. Deze standaardcategorie stelt u in via de optie Config in het administratietool. U kunt ook parameters toevoegen om de weergave aan te passen aan uw wensen. Dit zijn de parameters die u kunt gebruiken: · zftemplate – naam van de template; · zfposition – lijst van kommagescheiden nummers, die naar afzonderlijke nieuwsfeeds in een categoriebestand verwijzen; · zfmore – toon al het nieuws van het aangegeven feednummer; · zfcategorie – toon alleen het nieuws uit een bepaalde categorie. Aanroep Http://voorbeeld.nl/newsfeeds/zfeeder.php?zftemplate=bliksemflits&zfposition=3,5,1 vindt u toont met behulp van het zelfgemaakte template Bliksemflits de posities 3, 5 en 1 uit de standaardcategorie. Om de berichten te tonen in een bestaande webpagina kunt u een div-, frame- of iframe-constructie gebruiken. Wap-versie De nieuwste versie van Zfeeder biedt nog iets extra's. U kunt de verzamelde nieuwsfeeds namelijk niet alleen in een html-bestand tonen, maar ook op een wap-telefoon of een ander mobiel apparaat dat wap-bestanden kan tonen, zoals een Palm of pocket-pc. Hiervoor hebt u het script wap.php en het wap-voorbeeld demo_wap.wml nodig. De benodigde templates vindt u in de submap Templates (ze hebben het voorvoegsel wap_). Met behulp van een wap-emulator kunt u zien hoe uw nieuwsportal eruit komt te zien. Scripts voor feeds Wie de rss-feed niet handmatig wil bijwerken, kan gebruikmaken van verschillende tools. In de meeste gevallen gaat het om php-scripts, die u naar wens kunt aanpassen. Op www.phpfreakz.nl en www.hotscripts.com vindt u nog meer handige scripts. Perl · Workshop voor het omzetten van html-bestanden naar rss-feeds: www.perl.com/pub/a/2001/11/15/creatingrss.html Php · Jazarsoft RSS Builder: www.jazarsoft.com/product.php?pid=0090040053 · Orangebox RSS Generator: http://orangebox.netscripter.net · Feed Creator: http://freshmeat.net/projects/feedcreator/ · RSS parser: http://www.phpfreakz.nl/library.php?sid=15169 Versie wirwar Er bestaan meerdere versies van het rss-formaat. Welke moet u hebben? Oorspronkelijk is het rss-formaat ontwikkeld door internetpionier Netscape. Doel was de nieuwtjes van het internetportaal Mynetscape.com beschikbaar te stellen aan gebruikers van de Netscape-browser. De gebruikte versie RSS 0.90 ondersteunde maximaal 15 berichten met elk een titel, korte beschrijving en link naar het volledige artikel. Userland ontwikkelde het formaat verder, met als doel de techniek in haar weblogsoftware te integreren. Hieruit ontstond later versie 2.0 van het rss-formaat, waarin het onder andere mogelijk is om commentaar bij elk bericht op te nemen. Intussen werd ook RSS 1.0 gedefinieerd, dat zich heeft gebaseerd op de W3C-standaard RDF. Volgens syndic8.com, een website met een zeer uitgebreid overzicht van beschikbare rss-feeds, gebruikt een derde van de websites versie 0.91 van het rss-formaat. Dit is ook de meest veilige keuze, omdat vrijwel alle rss-readers deze versie ondersteunen. Volgens de website www.diveintomark.org zijn er nu negen verschillende rss-versies, die niet onderling uitwisselbaar zijn. Een vergelijking vindt u op deze webpagina: http://diveintomark.org/archives/2004/02/04/incompatible-rss. Terwijl rss-feeds nog in opkomst zijn, dient de opvolger zich alweer aan: Atom. Daarbij gaat het eveneens om een xml-standaard, waarmee platform-onafhankelijk informatie kan worden uitgewisseld. Atom verenigt de voordelen van de verschillende rss-formaten en vult ze aan met nieuwe elementen die vooral bedoeld zijn voor weblogs. Atom is momenteel nog in de ontwikkeling en wordt nog door weinig tools ondersteund. Handige links Informatie over Atom: www.atomenabled.org Feed Validator: www.feedvalidator.org Userland RSS Central: http://rss.userland.com Specificatie RSS 0.91: http://my.netscape.com/publish/formats/rss-spec-0.91.html Specificatie RSS 1.0: http://web.resource.org Specificatie RSS 2.0: http://blogs.law.harvard.edu/tech/rss W3C – Resource Description Framework (RDF): www.w3.org Web Dev Tips – RSS Headliner: www.webdevtips.com/webdevtips/codegen/rss.shtml Handleiding voor het maken van een nieuwsfeed in RSS 1.0: www.oreillynet.com/pub/a/network/2000/08/25/magazine/rss_tut.html Zfeeder Met Zfeeder kunt u heel gemakkelijk zorgen dat nieuwsfeeds van anderen op uw website worden getoond. U kunt de weergave van de berichten met behulp van templates definiëren. Stap 1. Open het script admin.php in de map Zfeeder. Voor het kiezen van de verschillende functies maakt u gebruik van het horizontale of verticale menu. Stap 2. Kies de optie Add new, om een nieuwe rss-feed aan uw webpagina toe te voegen. U kunt een domeinnaam invoeren en de autodetect-functie van Zfeeder gebruiken om de exacte url te vinden. Lukt dit niet, dan kunt u ook handmatig het volledige pad naar de nieuwsfeed invullen. Stap 3. Is de vorige stap succesvol verlopen, dan ziet u op de volgende pagina alle relevante informatie over de gekozen nieuwsfeed. In het veld Showed news kunt u het aantal berichten aangeven, dat moet worden getoond. Via het pulldownmenu Category wijst u de feed aan een rubriek toe. Met de knop Add to subscription list gaat u verder. Stap 4. Klik voor het aanpassen van de lijst op de menuoptie Subscriptions in het hoofdmenu. Bovenin kunt u opnieuw de categorie uitkiezen. U hebt de mogelijkheid om uw newsfeederlijst aan te passen. Voor het wissen van een item klikt u de checkbox in de eerste kolom en vervolgens op de knop Delete selected onderaan de lijst. U kunt ook de volgorde waarin de feeds op de pagina verschijnen wijzigen. Stap 5. De menuoptie Config biedt drie mogelijkheden om globale parameters te definiëren. U kunt een admin-wachtwoord invoeren, de standaardcategorie, de naam van het cachebestand aangeven en een template uitkiezen. Stap 6. Een eenvoudige manier om complete lijsten te integreren is het importeren van zogenaamde opml-bestanden. Het gaat daarbij om een soort favorietenlijst voor rss-feeds. U kunt ze vinden via uw rss-reader of rss-portalsites, bijvoorbeeld http://www.w3os.nl/logos/opml/. Het opml-bestand kan op een server of op een lokale pc staan. Kies in het hoofdmenu voor Import feed list en vul het adres van het opml-bestand in. Stap 7. Om uw nieuwsportal te testen roept u het script zfeeder.php aan. U kunt deze opdracht met parameters uitbreiden, bijvoorbeeld door een specifieke categorie aan te geven. Let op: auteursrecht Technisch gezien is het samenvoegen van een aantal nieuwsfeeds tot een indrukwekkend nieuwsportaal niet ingewikkeld. Houd echter wel rekening met auteursrechten en aarzel niet om bij twijfel navraag te doen bij de eigenaar. Niet elke aanbieder van rss-feeds staat toe dat u zomaar nieuws overneemt en op uw eigen website aanbiedt. De meeste aanbieders staan toe dat u de nieuwtjes gebruikt op niet-commerciële websites, op voorwaarde dat u de bron vermeldt. Op het web Op PCMweb vindt u alle url's uit dit artikel nogmaals op een rij. Meer weten over rss? Lees dan het artikel op pagina xx. Hier leest u meer het dagelijkse gebruik van rss-feeds. Zo bespreken we onder andere de bekendste lezers en vertellen we u hoe u de feeds kunt vinden én bewaren.

Geschreven door: Redactie PCM op

Category: Nieuws, Algemeen

Tags:

Nieuws headlines

Laatste reactie