<?xml version="1.0" encoding="UTF-8"?>
<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/"
	>

<channel>
	<title>Wessel Zweers &#187; CMS</title>
	<atom:link href="http://www.laterna.nl/tag/cms/feed" rel="self" type="application/rss+xml" />
	<link>http://www.laterna.nl</link>
	<description></description>
	<lastBuildDate>Tue, 03 Jan 2012 16:01:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>Een online nieuwsarchief beter vindbaar maken in Google</title>
		<link>http://www.laterna.nl/201102/seo-paginering-google.php</link>
		<comments>http://www.laterna.nl/201102/seo-paginering-google.php#comments</comments>
		<pubDate>Mon, 07 Feb 2011 18:13:08 +0000</pubDate>
		<dc:creator>Wessel</dc:creator>
				<category><![CDATA[Handig]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Pagerank]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[webdesign]]></category>
		<category><![CDATA[zoeken]]></category>

		<guid isPermaLink="false">http://www.laterna.nl/?p=1940</guid>
		<description><![CDATA[Je hebt honderden oude nieuwsberichten op je site. Keurig chronologisch gesorteerd en opgehakt in groepjes van tien. Toch worden de oude berichten slecht gevonden. Hoe komt dat? Een vaak voorkomend SEO-probleem. De waarschijnlijke oorzaak: het pagineren van nieuwsoverzichten is slecht voor Google. Gelukkig zijn er goede alternatieven. Nooit: in deze blogpost heb ik het over [...]]]></description>
			<content:encoded><![CDATA[<p>Je hebt honderden oude nieuwsberichten op je site. Keurig chronologisch gesorteerd en opgehakt in groepjes van tien. Toch worden de oude berichten slecht gevonden. Hoe komt dat? Een vaak voorkomend SEO-probleem. De waarschijnlijke oorzaak: het pagineren van nieuwsoverzichten is slecht voor Google. Gelukkig zijn er goede alternatieven.<br />
<span id="more-1940"></span><br />
<em>Nooit: in deze blogpost heb ik het over archieven van nieuwsberichten om het wat minder abstract te maken. Maar dit verhaal gaat net zo goed op voor archieven van tv-uitzendingen, van boekbesprekingen, van geregistreerde forumdeelnemers, noem maar op.</em></p>
<h2>Hoe nieuwsarchieven meestal ontsloten zijn: paginering</h2>
<p>Je ziet ze vooral vaak op weblogs: nieuwsarchieven die al het oude nieuws keurig pagineren. Op elke pagina vind je een lijstje van tien nieuwskoppen, ieder met een link naar een aparte pagina met het volledige bericht. Met een bladerfunctie onderaan de pagina spring je van pagina 1 naar pagina 2, naar pagina 3, enzovoorts.</p>
<p><img src="http://www.laterna.nl/wp-content/uploads/paginering_drupal.jpg" alt="" title="paginering_drupal" width="337" height="34" class="alignnone size-full wp-image-1947" /><br />
<img src="http://www.laterna.nl/wp-content/uploads/paginering_zembla.jpg" alt="" title="paginering_zembla" width="508" height="29" class="alignnone size-full wp-image-1946" /><br />
<img src="http://www.laterna.nl/wp-content/uploads/paginering_twerpscan.jpg" alt="" title="paginering_twerpscan" width="206" height="42" class="alignnone size-full wp-image-1948" /></p>
<p>Deze manier van navigeren lijkt veel op de manier waarop Google zoekresultaten presenteert:</p>
<p><img src="http://www.laterna.nl/wp-content/uploads/paginering_google.jpg" alt="" title="paginering_google" width="603" height="69" class="alignnone size-full wp-image-1950" /></p>
<p>Of soms wordt de bladerfunctie simpelweg ingekort tot bijvoorbeeld:</p>
<p><img src="http://www.laterna.nl/wp-content/uploads/paginering_marketingfacts.jpg" alt="" title="paginering_marketingfacts" width="585" height="31" class="alignnone size-full wp-image-1952" /></p>
<p>Het bladeren door overzichten die over meerdere pagina&#8217;s zijn uitgesmeerd kom je kortom overal tegen op het web. Maar is een wijdverbreide methode ook automatisch een goede methode? Vaak wel, maar niet als het gaat om paginering.</p>
<h2>Pagineren is een slechte ervaring voor bezoekers</h2>
<p>Om de vergelijking met Google-zoekresultaten even verder door te trekken: als je zelf een zoekterm intikt in Google en je een lijst van gevonden pagina&#8217;s krijgt, hoeveel treffers bekijk je dan? De eerste 3, de eerste 10,  de eerste 30? Als je een doorsnee gebruiker bent: waarschijnlijk hooguit de eerste 10, en vaak nog minder dan dat.</p>
<p>Uit onderzoek blijkt dat internetgebruikers steeds ongeduldiger worden en al lang niet meer de moeite nemen om na de eerste 10 treffers door te klikken naar het vervolg. Internet is een snel medium, internetgebruikers zijn ongeduldig en hebben een groeiende afkeer van lange overzichten. Een navigatiebalk met de mogelijkheid om naar de volgende pagina met 10 treffers te gaan, en weer een pagina met nog meer treffers, en weer een pagina: het is vaker een afhaakmoment dan een aanmoediging om door te gaan.</p>
<h2>Pagineren is ook slecht voor Google</h2>
<p><a href="http://www.laterna.nl/documentatie/diversen/google-seo-website-zoekmachinevriendelijk">Al vaker heb ik het geschreven</a>: een slechte ervaring voor menselijke bezoekers gaat opvallend vaak samen met een slechte ervaring voor zoekmachines. Zo ook hier. Internetgebruikers haken op zeker moment af, maar Google doet dat ook. Natuurlijk is Google prima in staat om al je tientallen overzichtspagina&#8217;s door te fietsen en vandaaruit de volledige berichten te vinden. Maar Google doet dat niet. Op veel sites zie je hetzelfde patroon: vanuit de homepage volgt Google een linkje of drie en de rest laat hij zitten &#8211; die zit te ver weggestopt.</p>
<p>Je kunt eenvoudig zelf de proef op de som nemen. Installeer bijvoorbeeld de Firefox-plugin <a href="https://addons.mozilla.org/en-US/firefox/addon/searchstatus/">SearchStatus</a>. Als je na installatie gaat surfen, dan zie je rechts onderaan elke webpagina die je bezoekt de <i>pagerank</i>, een getal van 0 tot 10 waarmee Google de reputatie van die pagina classificeert (het groene balkje, niet het blauwe).</p>
<p><img src="http://www.laterna.nl/wp-content/uploads/paginering_searchstatus.jpg" alt="" title="paginering_searchstatus" width="107" height="23" class="alignnone size-full wp-image-1957" /></p>
<p>Duik nu eens diep in een willekeurig nieuwsarchief, bijvoorbeeld dat van <a href="http://www.marketingfacts.nl/P20/">Marketingfacts</a> of <a href="http://www.emerce.nl/nieuws/page/16">Emerce</a>. Bijna overal zie je hetzelfde beeld: nieuwsberichten met een pagerank van 0. Dat betekent dat Google zo&#8217;n pagina óf nog helemaal niet heeft ontdekt, óf wel heeft ontdekt maar er geen waarde aan hecht. Wat kun je daaraan doen?</p>
<h2>Een XML-sitemap is niet voldoende</h2>
<p>De standaardoplossing voor problemen met vindbaarheid in Google is om een <a href="http://www.google.com/support/webmasters/bin/answer.py?hl=en&#038;answer=156184">XML-sitemap</a> te maken met een volledige inhoudsopgave van je hele site. Zo&#8217;n sitemap is niet bedoeld voor menselijke bezoekers, maar alleen om zoeksystemen op de hoogte te houden van wijzigingen op je site.</p>
<p>Aan de hand van de XML-sitemap ziet Google voortaan precies welke pagina&#8217;s op je site nog ontbreken in zijn index. Veel contentmanagementsystemen genereren standaard XML-sitemaps, of hebben daar speciale plugins voor. Een kind kan de was doen.</p>
<p>Probleem opgelost? Niet helemaal. Natuurlijk wordt een website nooit slechter van een extra XML-sitemap. Maar een XML-sitemap heeft wel een belangrijke SEO-beperking: hij verbetert wel de <em>vindbaarheid</em> van dieperliggende pagina&#8217;s, maar niet de <em>reputatie</em> oftewel de <em>pagerank</em>. Webpagina&#8217;s krijgen pas reputatie als ze goede en duurzame links van andere pagina&#8217;s krijgen &#8211; vanaf de eigen website of vanaf andere sites.</p>
<p>Die duurzaamheid is een probleem bij chronologische paginering. Een recent nieuwsbericht is eerst vindbaar via overzichtspagina 1 (met nieuwsberichten 1 t/m 10), een paar dagen/weken later via overzichtspagina 2 (met nieuwsberichten 11 t/m 20), daarna overzichtspagina 3, enzovoorts. Naarmate het archief groeit, schuift dat bericht verder door en is het steeds een andere overzichtspagina (4, dan 5, dan 6, dan &#8230;) die ernaar linkt. De kans is groot dat dat bericht altijd op pagerank 0 blijft steken. Google houdt van duurzaam gestructureerde websites en niet van links die eerst op de ene en dan op de andere overzichtspagina staan.</p>
<h2>Hoe het beter kan: een platte linkstructuur</h2>
<p>Om oude nieuwsberichten wat pagerank te bezorgen, moeten we dus zorgen voor links vanaf <em>vaste</em> pagina&#8217;s, niet vanaf <em>wisselende</em> pagina&#8217;s. De simpelste oplossing: maak één lange overzichtspagina met links naar álle oude nieuwsberichten, ook al zijn het er meer dan duizend. In feite laat je dus gewoon de paginering weg. Hou je nog maar één enkele vaste pagina over.</p>
<p>Deze radicale oplossing lost in ieder geval het probleem op van de slechte Google-vindbaarheid. Als de homepage van je website rechtstreeks linkt naar deze overzichtspagina, dan zijn alle oude nieuwsberichten precies twee muiskliks verwijderd van de homepage. Zelfs zonder een XML-sitemap zal Google al je oude berichten vinden.</p>
<p><img src="http://www.laterna.nl/wp-content/uploads/paginering_totaaloverzicht.jpg" alt="" title="paginering_totaaloverzicht" width="378" height="400" class="alignnone size-full wp-image-1959" /></p>
<p>Wel blijft er nog een ander probleem: een overzichtspagina met honderden of zelfs meer dan duizend links is een slechte ervaring voor je bezoekers (plus een zware belasting voor je cms, dat hiervoor uitgebreide selecties moet uitvoeren). Maar ook daar valt prima iets aan te doen. Allereerst een redactionele ingreep: <em>maak tussenkopjes</em>, bijvoorbeeld om de maanden aan te geven. Dan kunnen bezoekers gerichter in een bepaalde periode zoeken. Bijvoorbeeld alleen de laatste drie maanden. Of alleen het voorjaar van 2005.</p>
<p>Zelfs met tussenkopjes blijft die overzichtspagina nog heel lang. Een tweede ingreep is meer technisch van aard: maak al die tussenkopjes <em>in- en uitvouwbaar</em>. Een voorbeeld is <a href="http://www.klimaatnieuws.nl/nieuwsarchief">dit nieuwsoverzicht op Klimaatnieuws.nl</a>:</p>
<p><img src="http://www.laterna.nl/wp-content/uploads/paginering_klimaatnieuws.jpg" alt="" title="paginering_klimaatnieuws" width="169" height="399" class="alignnone size-full wp-image-1960" /></p>
<p>Als je een specifieke maand zoekt, hoef je alleen maar die maand uit te vouwen (onderstaand plaatje is niet klikbaar, <a href="http://www.klimaatnieuws.nl/nieuwsarchief">ga daarvoor naar Klimaatnieuws.nl</a>):</p>
<p><img src="http://www.laterna.nl/wp-content/uploads/paginering_klimaatnieuws_uitklap.jpg" alt="" title="paginering_klimaatnieuws_uitklap" width="456" height="270" class="alignnone size-full wp-image-1961" /></p>
<p>En als je in een langere periode zoekt, kun je álle maanden uit het hele overzicht in één keer uitvouwen. Op internet zijn veel scripts te vinden voor dit soort uitvouwsystemen, zoek daarvoor op &#8216;folding menu&#8217;. Ze zijn zo gemaakt dat zoekmachines feitelijk alleen maar uitgevouwen maanden zien en dus ook alle nieuwsberichten probleemloos zullen vinden.</p>
<h2>Hoe het nóg beter kan: inhoudelijk linken</h2>
<p>Niet alle hyperlinks zijn gelijk voor Google. Een link naar een andere pagina met soortgelijke inhoud telt zwaarder dan een link naar een pagina over een heel ander onderwerp. Hoe meer relevante links, hoe beter je reputatie in Google.</p>
<p>Hoe groter je nieuwsarchief, hoe meer raakvlakken er ontstaan tussen al die nieuwsberichten. Daarom: zorg ervoor dat die naar elkaar linken. Niet alleen voor Google, maar ook voor bezoekers is dat prettig. Als die bezoekers vanuit een externe site rechtstreeks op een nieuwsbericht op jouw site uitkomen, dan maak je het ze makkelijk door ze direct te verwijzen naar soortgelijke berichten. Hoeven ze niet je hele nieuwsarchief door te spitten.</p>
<p>Doelgericht hyperlinks aanbrengen tussen nieuwsberichten is wel heel arbeidsintensief. Eigenlijk zou je dit al moeten doen tijdens het schrijven van een nieuwsbericht, niet pas achteraf. Gelukkig zijn er foefjes om een bestaand archief achteraf te verrijken met inhoudelijke links. Bij veel nieuwsberichten zie je bijvoorbeeld onderaan een rijtje gerelateerde berichten. Zoiets als:</p>
<p><img src="http://www.laterna.nl/wp-content/uploads/paginering_leesook.jpg" alt="" title="paginering_leesook" width="439" height="115" class="alignnone size-full wp-image-1962" /></p>
<p>In veel contentmanagementsystemen kunnen deze gerelateerde links automatisch worden gegenereerd. Bij WordPress heb ik goede ervaringen met de <a href="http://wordpress.org/extend/plugins/yet-another-related-posts-plugin/">plugin YARPP</a> (Yet Another Related Posts Plugin). Deze plugin beoordeelt op basis van titelwoorden, categorieën, trefwoorden en andere kenmerken in hoeverre twee nieuwsberichten met elkaar verwant zijn.</p>
<p>Er is een nadeel aan dit soort plugins: ze zijn slecht voor de performance van je site. In principe moet voor elk nieuwsbericht een ingewikkelde zoekselectie op de rest van het archief worden uitgevoerd. Dat hakt erin, uit eigen metingen op deze site bleek de gemiddelde laadtijd per nieuwspagina met 45% toe te nemen.</p>
<p>Ik raad daarom aan om zo&#8217;n plugin alleen toe te passen in combinatie met <a href="http://nl.wikipedia.org/wiki/Cache">caching</a>. Dat houdt in dat die ingewikkelde zoekselectie niet elke keer opnieuw wordt uitgevoerd, maar alleen op gezette tijden, bijvoorbeeld eens per uur, eens per dag of nog minder vaak. Hoe je caching moet toepassen? Dat hangt af van je contentmanagementsysteem. Vaak heeft zo&#8217;n systeem kant-en-klare caching-modules.</p>
<p>En nog een kleine tip, maar met grote gevolgen. Bij een plugin als YARPP kun je kiezen of de gerelateerde berichten onderaan een nieuwsbericht altijd ouder zijn, of ook van recenter datum kunnen zijn. Met andere woorden: mag een nieuwsbericht ook verwijzen naar andere berichten die later zijn gepubliceerd?</p>
<p>Mijn advies: kies altijd het laatste, want dan wordt de pagerank van Google gelijkmatiger over je nieuwsarchief uitgesmeerd. Kies je voor alleen linken naar oudere berichten, dan krijgen de alleroudste berichten uit je archief relatief de meeste pagerank, terwijl je je bezoekers misschien juist liever wat meer actuele nieuwsberichten zou laten lezen.</p>
<p>Dus: mocht de performance er niet onder lijden, dan heb je met het toevoegen van gerelateerde berichten een snelle manier om een nieuwsarchief inhoudelijk te verrijken. Daar worden zowel Google als bezoekers blij van.</p>
<h2>Nog even recapituleren</h2>
<p>Er zijn talloze manieren om een grote verzameling oude nieuwsberichten beter toegankelijk te maken voor bezoekers én beter vindbaar voor Google, maar paginering is zo ongeveer de allerslechtste.</p>
<p>Mijn twee favoriete methoden om het beter te doen heb ik hierboven beschreven:</p>
<ul>
<li>een simpel totaaloverzicht (waar je eventueel een in-/uitvouwmogelijkheid aan kunt toevoegen),</li>
<li>inhoudelijke links aanbrengen (al of niet geautomatiseerd) tussen verwante berichten.</li>
</ul>
<p>Natuurlijk zijn er nog meer manieren te bedenken voor een betere structuur. Gebruik je zelf een andere methode, dan ben je welkom om dat hieronder te melden!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.laterna.nl/201102/seo-paginering-google.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Drupal versus TYPO3: een vergelijking</title>
		<link>http://www.laterna.nl/201012/drupal-typo3-vergelijking.php</link>
		<comments>http://www.laterna.nl/201012/drupal-typo3-vergelijking.php#comments</comments>
		<pubDate>Fri, 17 Dec 2010 17:12:05 +0000</pubDate>
		<dc:creator>Wessel</dc:creator>
				<category><![CDATA[Commentaar]]></category>
		<category><![CDATA[Ontwikkelingen]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[Drupal]]></category>
		<category><![CDATA[open-source]]></category>
		<category><![CDATA[typo3]]></category>

		<guid isPermaLink="false">http://www.laterna.nl/?p=1751</guid>
		<description><![CDATA[Wat Drupal en TYPO3 gemeen hebben Gebruiksvriendelijkheid voor redacteuren Architectuur: inhoudstypes Architectuur: taxonomieën Architectuur: TYPO3-boomstructuur Architectuur: domeinen Ontwikkeling: Typoscript Ontwikkeling: modules/extensies en complexiteit Ontwikkeling: documentatie Ontwikkeling: zoeken Ontwikkeling/beheer: OTAP Beheer: performance Beheer: security Beheer: upgraden Front-end: zelf themen Front-end: kant-en-klare themes Community Conclusie Wie zich verdiept in de wereld van open-source contentmanagementsystemen, komt al snel [...]]]></description>
			<content:encoded><![CDATA[<div style="float:left;margin-right:10px"><div id='toc' class='post-1751'><div id='toc_title'></div>
<ul><li><a href="#Wat-Drupal-en-TYPO3-gemeen-hebben">Wat Drupal en TYPO3 gemeen hebben</a></li>
<li><a href="#Gebruiksvriendelijkheid-voor-redacteuren">Gebruiksvriendelijkheid voor redacteuren</a></li>
<li><a href="#Architectuur-inhoudstypes">Architectuur: inhoudstypes</a></li>
<li><a href="#Architectuur-taxonomien">Architectuur: taxonomieën</a></li>
<li><a href="#Architectuur-TYPO3boomstructuur">Architectuur: TYPO3-boomstructuur</a></li>
<li><a href="#Architectuur-domeinen">Architectuur: domeinen</a></li>
<li><a href="#Ontwikkeling-Typoscript">Ontwikkeling: Typoscript</a></li>
<li><a href="#Ontwikkeling-modulesextensies-en-complexiteit">Ontwikkeling: modules/extensies en complexiteit</a></li>
<li><a href="#Ontwikkeling-documentatie">Ontwikkeling: documentatie</a></li>
<li><a href="#Ontwikkeling-zoeken">Ontwikkeling: zoeken</a></li>
<li><a href="#Ontwikkelingbeheer-OTAP">Ontwikkeling/beheer: OTAP</a></li>
<li><a href="#Beheer-performance">Beheer: performance</a></li>
<li><a href="#Beheer-security">Beheer: security</a></li>
<li><a href="#Beheer-upgraden">Beheer: upgraden</a></li>
<li><a href="#Frontend-zelf-themen">Front-end: zelf themen</a></li>
<li><a href="#Frontend-kantenklare-themes">Front-end: kant-en-klare themes</a></li>
<li><a href="#Community">Community</a></li>
<li><a href="#Conclusie">Conclusie</a></li>
</ul>
</div></div>
<p>Wie zich verdiept in de wereld van open-source contentmanagementsystemen, komt al snel bekende namen als WordPress, Joomla, Drupal en TYPO3 tegen. Vooral Drupal en TYPO3 worden vaak toegepast voor het wat steviger werk, bijvoorbeeld sites met veel subsites, met allerlei web 2.0-achtige toepassingen en met koppelingen met externe systemen. Tot op zekere hoogte worden ze voor dezelfde soort websites ingezet, maar ze zijn totaal verschillend. Welk systeem moet je kiezen? Met zowel TYPO3 als Drupal heb ik nu ruim een jaar praktijkervaring, allebei in de omroepwereld, respectievelijk bij VARA en NCRV. Hieronder mijn bevindingen als webontwikkelaar.</p>
<p><span id="more-1751"></span><br />
<em>Lees gewoon verder, of gebruik de inhoudsopgave links om alleen specifieke vergelijkingspunten te lezen.</em><br />
<br clear="all"></p>
<h2 id='Wat-Drupal-en-TYPO3-gemeen-hebben'>Wat Drupal en TYPO3 gemeen hebben</h2>
<p>Eerst wat basisbegrippen en de belangrijkste overeenkomsten. Drupal en TYPO3 zijn allebei PHP/MySQL-toepassingen die je op een eigen webserver kunt installeren. De kale versies (<em>core</em>) van beide systemen bieden al heel veel standaardfunctionaliteit, maar voor speciale doeleinden kun je nog extra aanvullende modules installeren, bij TYPO3 heten deze <em>extensies</em>. Beide contentmanagementsystemen hebben een <em>back-end</em> waarin redacteuren en beheerders kunnen inloggen voor hun dagelijkse werkzaamheden.</p>
<p>Drupal en TYPO3 hebben allebei een <em>community</em> van ontwikkelaars en gebruikers die zich inzetten voor de verdere ontwikkeling. Regelmatig verschijnen nieuwe updates van zowel core als modules/extensies. Meestal gaat het om nieuwe features en bugfixes, soms om reparatie van veiligheidslekken.</p>
<h2 id='Gebruiksvriendelijkheid-voor-redacteuren'>Gebruiksvriendelijkheid voor redacteuren</h2>
<p>Het succes van een contentmanagementsysteem (<em>cms</em>) binnen een organisatie wordt voor een aanzienlijk deel bepaald door het draagvlak onder redacteuren. Zij werken er immers het meeste mee. Daarom behandel ik dit punt bewust als eerste. En op dit punt scoort Drupal duidelijk beter dan TYPO3. Webredacteuren die met Drupal werken heb ik eigenlijk nooit horen klagen dat het van nature een te ingewikkeld systeem zou zijn, integendeel. Stagiaires kunnen er al vrij snel mee aan de slag, zonder dat een ontwikkelaar ze voortdurend te hulp moet schieten.</p>
<p>De TYPO3-interface is daarentegen veel minder intuïtief, ik heb weleens scheldpartijen van gefrustreerde webredacteuren moeten aanhoren. Vaak verwijzen ze naar het immens populaire WordPress, een pakket waarmee steeds meer redacteuren ervaring hebben. Hoewel WordPress niet geschikt is voor het grote werk, zie je heel duidelijk dat WordPress qua gebruiksvriendelijkheid steeds meer de meetlat wordt waarlangs anders cms&#8217;en worden gelegd. En dan komt TYPO3 er niet zo best van af.</p>
<p>Een dikke plus dus voor Drupal. Toch zijn hierbij twee nuances op hun plaats. Allereerst is er in 2010 een nieuwe TYPO3-release verschenen (<a href="https://TYPO3.org/download/release-notes/TYPO3-44/">4.4</a>) met een sterk verbeterde interface. TYPO3 probeert dus een inhaalslag te maken, goede zaak.</p>
<p>Daarnaast heeft TYPO3 een nuttige feature die van levensbelang kan zijn voor webredacteuren: de mogelijkheid om <a href="https://TYPO3.org/download/release-notes/TYPO3-44/">redactionele bewerkingen ongedaan te maken</a> en verwijderde items uit een virtuele prullenbak terug te halen. In Drupal heb ik weleens gezocht naar dergelijke functionaliteit, maar wat ik vond was veel simpeler en lang niet full-proof. En tja, en als het een keer flink misgaat, dan blijft er nog maar één redmiddel over: in allerijl een databasebackup terugzetten.</p>
<h2 id='Architectuur-inhoudstypes'>Architectuur: inhoudstypes</h2>
<p>Dit vind ik duidelijk een van de sterkste punten van Drupal. Dankzij de Drupal-module <a href="http://drupal.org/project/cck">CCK (Content Construction Kit)</a> kun je alle inhoudstypes (pagina&#8217;s, nieuwsberichten, adressen, gebruikers, vul zelf maar aan) via de back-end helemaal zelf configureren. Per inhoudstype kun je onbeperkt velden toevoegen en per veld het datatype (tekst, getal, plaatje, enzovoorts) specificeren. CCK is zó standaard geworden in Drupal dat vrijwel alle andere modules er goed mee samenwerken.</p>
<p>In TYPO3 is het ook wel mogelijk om je eigen inhoudstypes op maat te maken, maar dat ging altijd veel omslachtiger. Vaak zie je hierbij de TYPO3-extensie <a href="http://TYPO3.org/documentation/document-library/extension-manuals/tt_news/2.5.0/view/">tt_news</a> opduiken: aanvankelijk bedoeld voor nieuwsberichten, maar gaandeweg gebruikt voor van alles en nog wat, bijvoorbeeld om er portfolio-items in te zetten.</p>
<p>Een andere mogelijkheid is om voor specifieke inhoudstypes een aparte TYPO3-extensie te maken. Het werkt allemaal, maar uit oogpunt van transparantie, van integratie in andere modules en van slagvaardig debuggen geef ik toch de voorkeur aan de back-end als dé plek om inhoudstypes te definiëren en te beheren &#8211; dus zoals Drupal dat doet.</p>
<p>Heb je in Drupal eenmaal je eigen inhoudstypes gedefinieerd, dan kun je met de<a href="http://drupal.org/project/views"> Views-module</a> bepalen hoe ze op het scherm worden getoond. In essentie is Views niets anders dan een interface om query&#8217;s op je eigen inhoudstypes te specificeren. MySQL-kenners zullen juichen bij het lezen van de vorige zin.</p>
<h2 id='Architectuur-taxonomien'>Architectuur: taxonomieën</h2>
<p>Drupal heeft nog een geweldige ingebouwde feature: <a href="http://drupal.org/handbook/modules/taxonomy">taxonomieën</a>. Net als CCK en Views is deze functionaliteit zo ingeburgerd dat talloze andere modules er vrijwel probleemloos mee samenwerken.</p>
<p>Dankzij taxonomieën heeft Drupal mijn manier van websites bouwen fundamenteel veranderd. Waar ik nu standaard mee begin, is eerst een of meer taxonomieën aanmaken en die koppelen aan de belangrijkste navigatiemenu&#8217;s. Daarna bekijk ik per taxonomie welke inhoudstypes erbij moeten komen en per inhoudstype welke datavelden erin moeten zitten.</p>
<p>In feite is dit de <em>top-down</em> benadering van een informatiearchitect. Vroeger werkte ik veel meer <em>bottom-up</em>: eerst inhoudstypes maken en dan pas kijken hoe je die content met rubrieken en tags inhoudelijk kunt ontsluiten en integreren in ander delen van de toekomstige site.</p>
<h2 id='Architectuur-TYPO3boomstructuur'>Architectuur: TYPO3-boomstructuur</h2>
<p>TYPO3 heeft een volstrekt andere architectuur dan Drupal, die pakweg evenveel verschilt als de Chinese met de Engelse taal. De kern is een boomstructuur, waaraan je vrijwel alles kunt hangen: statische pagina&#8217;s, nieuwsitems, templates, geregistreerde gebruikers, gebruikersrechten, noem maar op.</p>
<p>In het begin heb ik erg moeten wennen aan dit concept. Die boom doet weliswaar denken aan een soort sitemap voor bezoekers van de site, maar deze vergelijking gaat al vrij snel mank. Nieuwsitems bijvoorbeeld: de detailpagina van een nieuwsitem hang je niet apart in de boom, maar alle nieuwsitem samen stop je samen in een <em>storage</em>-map, die je heel ergens anders in de boomstructuur kunt plaatsen. Ook kun je bepaalde zijtakken van de boom exclusief gebruiken voor templates, storagemappen en gebruikersgegevens.</p>
<p>Uiteindelijk is de TYPO3-boomstructuur dus een soort mengvorm van een sitemap voor redacteuren en een opbergsysteem voor ontwikkelaars en beheerders. Overzichtelijk en eenduidig is anders, maar ik moet ook wel weer toegeven: heb je het nogal abstracte principe van de boomstructuur eenmaal in je vingers, dan heb je genoeg bagage om ook complexe TYPO3-sites in betrekkelijk korte tijd te doorgronden.</p>
<h2 id='Architectuur-domeinen'>Architectuur: domeinen</h2>
<p>Bij TYPO3 en Drupal is het allebei mogelijk om content vanuit één installatie over verschillende domeinen en subdomeinen te serveren. Dit is een heel sterk punt van TYPO3: je kunt aan elk punt in de TYPO3-boomstructuur een domeinrecord hangen, zodat de onderliggende takken toegankelijk zijn via dat domein. Bij Drupal moet je hiervoor aparte modules inschakelen, en ik heb gemerkt dat de integratie met andere modules lang niet altijd perfect is &#8211; glad ijs dus.</p>
<h2 id='Ontwikkeling-Typoscript'>Ontwikkeling: Typoscript</h2>
<p>Iedere TYPO3-ontwikkelaar en -beheerder krijgt vroeg of laat te maken met <a href="http://drupal.org/handbook/modules/taxonomy">Typoscript</a>. Aanvankelijk was Typoscript bedoeld als een simpel XML-achtig configuratietaaltje voor webdesigners die niet met PHP kunnen of willen werken. In de loop der jaren is deze scriptingtaal echter zo complex geworden (met name door <a href="http://TYPO3.org/documentation/document-library/core-documentation/doc_core_tsbyex/0.0.16/view/4/1/">stdWrap</a>) dat de mogelijkheden veel en veel verder reiken en er hele boeken over zijn verschenen.</p>
<p>Met Typoscript heb ik altijd een haat-liefdeverhouding gehad. In het gunstigste geval kun je met Typoscript dingen voor elkaar krijgen zonder nieuwe TYPO3-extensies te bouwen of bestaande extensies aan te passen. In het ongunstigste geval wordt Typoscript te veel gebruikt als onnodige vervanging van PHP-code. Het gevolg: honderden regels Typoscript-code, die door zijn sterk afwijkende, niet-sequentiële manier van abstraheren veel moeilijker te doorgronden is dan hetzelfde aantal PHP-regels. Typoscript vond ik bovendien altijd lastig te debuggen, bij mijn weten zijn daar geen goede tools voor zoals bij PHP. Typoscript is ook nog veel zwijgzamer dan PHP als het gaat om <em>errors</em> en <em>warnings</em>.</p>
<h2 id='Ontwikkeling-modulesextensies-en-complexiteit'>Ontwikkeling: modules/extensies en complexiteit</h2>
<p>Drupal noemt ze modules, TYPO3 noemt ze extensies, maar het gaat om hetzelfde: extra bouwstenen die je optioneel kunt installeren. Vanuit de community worden er al duizenden aangedragen, waarvan een groot deel van uitstekende kwaliteit. Daarnaast bestaat natuurlijk altijd de mogelijkheid om zelf nieuwe modules te ontwikkelen &#8211; en bij voorkeur later weer terug te geven aan de community.</p>
<p>Zelf heb ik geen praktijkervaring met het bouwen van TYPO3-extensies, wel met het debuggen en aanpassen van Drupal-modules. Drupal werkt met <em>hooks</em>: functies die bestaande functionaliteit in de Drupal-core veranderen of uitbreiden. Dat lijkt heel overzichtelijk, maar ergens is er toch wel een grens. Als je lang doorgaat met extra modules installeren, bereik je naar mijn gevoel bij Drupal eerder een omslagpunt dan bij TYPO3. Dat omslagpunt uit zich in de vorm van niet gemakkelijk op te lossen bugs en performanceproblemen.</p>
<p>Ik ben er nog niet achter waar &#8216;m dat precies in zit. Mogelijk dat de vrij horizontale Drupal-architectuur ervoor zorgt dat er meer afhankelijkheden ontstaan in een complexe website. Interessant leesvoer wat dit betreft is <a href="http://webschuur.com/publications/blogs/2010-06-23-the_problem_of_drupals_exponential_complexity">The problem of Drupals exponential complexity</a> van Bèr Kessels.</p>
<p>De boomstructuur van TYPO3 &#8211; hoe warrig ook voor redacteuren en beginnende ontwikkelaars &#8211; lijkt uiteindelijk toch beter te schalen. Het is prima mogelijk om extensies alleen aan relevante delen van een website te hangen, wat interferentie en afhankelijkheden tussen extensies een stuk zou kunnen beperken.</p>
<h2 id='Ontwikkeling-documentatie'>Ontwikkeling: documentatie</h2>
<p>Hier kan ik kort over zijn: zowel bij Drupal als bij TYPO3 is die goed. Er zijn handleidingen voor beginners en gevorderden op internet te vinden, en ook in boekvorm. Wel merk ik in de praktijk dat als je met specifieke probleempjes zit, je bij Drupal meer kans hebt om bruikbare oplossingen te vinden dan bij TYPO3, simpelweg doordat Drupal wereldwijd meer gebruikers heeft en er meer over geblogd wordt.</p>
<h2 id='Ontwikkeling-zoeken'>Ontwikkeling: zoeken</h2>
<p>TYPO3 en Drupal hebben allebei out-of-the-box een zoekmogelijkheid. Bij TYPO3 is die slecht schaalbaar, bij sites van meer dan een paar honderd webpagina&#8217;s is die al merkbaar traag. De standaardzoeker van Drupal doet het iets beter, maar ook die raad ik niet aan voor complexe sites.</p>
<p>De oplossing in beide gevallen is integratie met externe zoekoplossingen. Bij TYPO3 is <a href="http://TYPO3.org/documentation/document-library/extension-manuals/mnogosearch/1.0.1/view/1/1/">mnoGoSearch</a> een veelgebruikte oplossing; bij Drupal heb ik goede ervaringen met <a href="http://drupal.org/project/apachesolr">Apache SOLR</a>.</p>
<h2 id='Ontwikkelingbeheer-OTAP'>Ontwikkeling/beheer: OTAP</h2>
<p>Het is vanzelfsprekend dat je nieuwe functionaliteit eerst ontwikkelt en test, alvorens die live te zetten. Vaak wordt hierbij het <a href="http://nl.wikipedia.org/wiki/Ontwikkeling,_test,_acceptatie_en_productie">OTAP-model</a> aangehouden: Ontwikkel, Test, Acceptatie, Productie.</p>
<p>Deze stapsgewijze werkwijze impliceert dat je af en toe nieuwe code moet overzetten naar een andere omgeving. Dat klinkt eenvoudig, maar de praktijk valt tegen. Drupal- en TYPO3-websites bestaan allebei voor een deel uit statische bestanden (PHP, templates, CSS) en voor een deel uit configuratie die in de MySQL-database wordt opgeslagen.</p>
<p>De statische bestanden zijn simpel over te zetten (al of niet met een <a href="http://en.wikipedia.org/wiki/Apache_Subversion">versiebeheersysteem als SVN</a>), maar de configuratie is lastiger. Als je een hele database overzet vanuit Ontwikkel, Test of Acceptatie naar Productie, dan wordt de bestaande redactionele content in de productieomgeving overschreven. Je moet dus maar een klein stukje van de database overzetten. In praktijk werkt het vaak het snelst door de configuratie op Productie handmatig opnieuw door te voeren. Met het risico dat je daarbij fouten maakt.</p>
<p>TYPO3 heeft daarbij nog een extra complicatie: in Typoscript wordt vaak verwezen naar specifieke knooppunten in de boomstructuur. TYPO3 doet dat met automatisch gegenereerde id&#8217;s. Maar pagina&#8217;s met redactionele content gebruiken ook die id&#8217;s. Het gevolg: als je een al bestaande site op Productie terugkopieert naar Ontwikkel om nieuwe features te ontwikkelen, dan gaan ontwikkelaars op Ontwikkel en redacteuren op Productie onbedoeld dezelfde id&#8217;s gebruiken. Bij het overzetten van ontwikkelwerk naar Productie moet je dus alle id&#8217;s langslopen en zonodig hernummeren.</p>
<p>Enfin, ik kan me voorstellen dat dit verhaal over id&#8217;s erg gedetailleerd wordt. Wat ik maar wil zeggen: Drupal en TYPO3 zijn allebei niet ideaal qua OTAP, waarbij Drupal net iets minder problematisch is. Overigens weet ik niet of TYPO3 op dit punt in het afgelopen jaar veel is veranderd. Als je als TYPO3-ontwikkelaar hier iets meer over weet, dan ben je welkom dat onderaan te melden bij de reacties.</p>
<h2 id='Beheer-performance'>Beheer: performance</h2>
<p>Bij elke PHP/MySQL-toepassing zie je hetzelfde beeld: hoe meer bezoekers er komen, hoe trager je site wordt. Vaak is MySQL de bottleneck. Zowel bij Drupal als bij TYPO3 heb ik gezien dat het aantal database-query&#8217;s voor de homepage van een portaalsite kan oplopen tot tussen de 500 en 1000. Voor één pagina!</p>
<p><a href="http://nl.wikipedia.org/wiki/Cache">Caching</a> is dus noodzakelijk en bij beide cms&#8217;en kunnen diverse cachingtechnieken voorhanden die veel performancewinst kunnen opleveren. In die zin is er dus nauwelijks verschil.</p>
<h2 id='Beheer-security'>Beheer: security</h2>
<p>In beide systemen worden weleens veiligheidslekken ontdekt, waarna onder regie van het <a href="http://drupal.org/security-team">Drupal Security Team</a> of het <a href="http://TYPO3.org/teams/security/">TYPO3 Security Team</a> een nieuwe versie van de core of van een specifieke module/extensie wordt uitgebracht. In frequentie en ernst van gevonden problemen zie ik geen wezenlijk verschil tussen Drupal en TYPO3.</p>
<h2 id='Beheer-upgraden'>Beheer: upgraden</h2>
<p>Hier scoort TYPO3 veel beter. Gemiddels eens per twee jaar verschijnt een <em>major release</em> van Drupal. Als ik deze woorden tik, staat <a href="http://drupal7releasedate.com">versie 7.0 op het punt van verschijnen</a>. Major releases van Drupal brengen altijd ingrijpende veranderingen met zich mee. Zelf heb ik een keer een relatief eenvoudige Drupal-site geüpgrade van 5 naar 6. Daar was ik dagen mee bezig, vooral omdat enkele Drupal 5-modules niet meer in 6 werkten en daarvoor andere oplossingen moesten worden gezocht.</p>
<p>Upgraden bij TYPO3 geeft veel minder kopzorgen. De enige nieuwe major release die ik ooit bij TYPO3 heb meegemaakt, <a href="http://wiki.TYPO3.org/TYPO3_4.0">versie 4.0</a>, gaf betrekkelijk weinig problemen.</p>
<h2 id='Frontend-zelf-themen'>Front-end: zelf themen</h2>
<p>Drupal en TYPO3 zijn beide van nature meer georiënteerd op back-end webontwikkelaars, minder op <em>themers</em>. In beide systemen is theming een vak apart. HTML en CSS zijn vaak verspreid over templates, modules en configuratie in de back-end. Het is vaak lastig om &#8216;even&#8217; iets aan te passen.</p>
<p>In de praktijk merk ik dat dat met Drupal wel wat sneller gaat dan bij TYPO3. Net als bij WordPress werk je bij Drupal met HTML-templates waar je PHP-functies in kunt stoppen. Vooral als je ervaring hebt met WordPress, zul je Drupal-theming veel sneller oppikken dan TYPO3-theming.</p>
<p>Aan de andere kant heeft Drupal een euvel dat TYPO3 weer niet heeft: de naar mijn smaak nogal doorgeslagen neiging om werkelijk overal &#8216;classes&#8217; en &#8216;divs&#8217; in te voegen &#8211; in Drupal word je soms tureluurs van de overmaat aan CSS.</p>
<h2 id='Frontend-kantenklare-themes'>Front-end: kant-en-klare themes</h2>
<p>WordPress-gebruikers worden verwend met een overvloed aan kant-en-klare themes &#8211; deels gratis, deels voor een bescheiden bedrag te koop. Het laatste jaar zie ik steeds meer van die themes overgezet worden naar Drupal, al blijft Drupal sterk achterlopen.</p>
<p>Voor TYPO3 is het aanbod aan goede themes helemaal erg beperkt. Als je voor TYPO3 kiest, is de kans dus groot dat je zelf moet gaan themen, of dat deel van de ontwikkeling uitbesteden.</p>
<h2 id='Community'>Community</h2>
<p>Via mailinglijsten, forums en gebruikersdagen volg ik de community&#8217;s van WordPress, Joomla, Movable Type, TYPO3 en Drupal op de voet. Die van Drupal vind ik het plezierigst en meest gastvrij, met WordPress als goede tweede. Vooral op de halfjaarlijkse Drupal-conferenties (DrupalCon) ervaar ik een schwung die ik zelden elders meemaak in de ict-wereld, zie bijvoorbeeld mijn <a href="http://www.laterna.nl/200909/drupalcon-paris-2009.php">ervaringen met DrupalCon 2009 in Parijs</a>.<br />
<!--Het spijt me het te moeten zeggen, maar de TYPO3-community ervaar ik over het algemeen als elitair, met uitzondering van een paar zeer behulpzame leden. Van dat elitaire karakter zou ik diverse veelzeggende anekdotes kunnen geven, maar die zijn misschien meer iets voor de borreltafel dan voor deze technisch-analytische blogpost.--></p>
<h2 id='Conclusie'>Conclusie</h2>
<p>De goede verstaander zal het wel hebben begrepen: ik ben zelf meer fan van Drupal dan van TYPO3. Vooral de gebruiksvriendelijkheid voor redacteuren, de elegante architectuur van Drupal en de enthousiaste community hebben mijn hart gestolen. Als voormalig TYPO3-ontwikkelaar heb ik de nogal spartaanse interface en het schrijven en debuggen van Typoscript als de grootste struikelblokken ervaren.</p>
<p>Daarmee wil ik beslist niet zeggen dat TYPO3 in zijn algemeenheid een inferieur systeem is. Als het gaat om complexe portaalsites met content op verschillende (sub)domeinen, denk ik zelfs dat TYPO3 een meer solide oplossing biedt dan Drupal. De toekomst van TYPO3 zie ik daarom vooral als ontwikkelframework voor <em>high-end</em> toepassingen, minder als cms. De TYPO3-community werkt zelf al geruime tijd aan zo&#8217;n framework: <a href="http://flow3.TYPO3.org/">Flow3</a>. Zonder meer een interessante ontwikkeling.</p>
<p>Maar voor verreweg de meeste websites zal zo&#8217;n geavanceerd framework niet nodig zijn. Heb je een middelgrote website in gedachten? Met maar één domein? Eventueel met community? Of web 2.0-toepassingen? Dan lijkt Drupal me het aangewezen cms.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.laterna.nl/201012/drupal-typo3-vergelijking.php/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Een jaar ervaring met WordPress MU</title>
		<link>http://www.laterna.nl/200912/wordpress-mu-ervaringen.php</link>
		<comments>http://www.laterna.nl/200912/wordpress-mu-ervaringen.php#comments</comments>
		<pubDate>Mon, 14 Dec 2009 08:51:37 +0000</pubDate>
		<dc:creator>Wessel</dc:creator>
				<category><![CDATA[Commentaar]]></category>
		<category><![CDATA[Ontwikkelingen]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[open-source]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.laterna.nl/?p=1632</guid>
		<description><![CDATA[Najaar 2008 maakte ik voor het eerst kennis met WordPress MU, na ruim een jaar wordt het tijd om mijn ervaringen op een rijtje te zetten. WordPress MU&#8230; wat is dat? Even uitleggen: WordPress (wordpress.org) is een open-source pakket waarmee je weblogs en niet al te ingewikkelde websites kunt maken. WordPress MU (mu.wordpress.org) is in [...]]]></description>
			<content:encoded><![CDATA[<p>Najaar 2008 maakte ik voor het eerst kennis met WordPress MU, na ruim een jaar wordt het tijd om mijn ervaringen op een rijtje te zetten.<br />
<span id="more-1632"></span></p>
<h2>WordPress MU&#8230; wat is dat?</h2>
<p>Even uitleggen: WordPress (<a href="http://wordpress.org/">wordpress.org</a>) is een open-source pakket waarmee je weblogs en niet al te ingewikkelde websites kunt maken. WordPress MU (<a href="http://mu.wordpress.org/">mu.wordpress.org</a>) is in feite hetzelfde, maar met het verschil dat je het maar één keer hoeft te installeren om meerdere websites op te zetten. MU (spreek uit <em>mjoe</em>) staat dan ook voor <em>multi-use</em>.</p>
<p><a href="http://wordpress.org/extend/themes/">Themes</a> (om je WordPress-site een eigen smoel te geven) en <a href="http://wordpress.org/extend/plugins/">plugins</a> (extra snufjes) hoef je maar één keer te installeren. Per website kun je beslissen deze wel of niet te activeren. Elke WordPress MU-website draait naar keuze op een eigen subdomein (<em>sitenaam.laterna.nl</em>), of in een submap (<em>laterna.nl/sitenaam</em>).</p>
<p>Het ei van Columbus voor wie meerdere WordPress-websites beheert? Soms wel, soms niet. Hieronder mijn bevindingen.</p>
<h2>Voordelen van WordPress MU?</h2>
<p><strong>Uniformiteit in beheer</strong><br />
Zoals gezegd hoef je bij WordPress MU alle themes en plugins maar één keer te installeren. Dus zodra een nieuwe versie van een plugin verschijnt, hoef je die maar eenmalig bij te werken. Dat scheelt veel werk als je heel veel websites beheert. Zeker als het gaat om een <a href="http://wordpress.org/development/2009/11/wordpress-2-8-6-security-release/">security-upgrade</a> is het belangrijk om snel om te kunnen schakelen naar een veilige nieuwe versie.</p>
<p><strong>Meertalige websites</strong><br />
WordPress MU is handig bij het opzetten van een meertalige website. Voor elke taal maak je een nieuwe website aan. Bouw in de layout een taalswitch in en je bent al een heel eind op streek.</p>
<p><strong>Backups</strong><br />
WordPress MU stopt de data van alle websites in één en dezelfde MySQL-database. Je hoeft dus maar één database te backuppen. Maak je een nieuwe website aan op dezelfde WPMU-installatie? Als je eenmaal hebt gezorgd voor een <a href="http://codex.wordpress.org/WordPress_Backups">goede backupprocedure</a>, dan wordt de nieuwe website automatisch meegenomen.</p>
<p><strong>OTAP</strong><br />
Complexe websites worden vaak volgens het <a href="http://nl.wikipedia.org/wiki/Ontwikkeling,_test,_acceptatie_en_productie">OTAP-stappenplan</a> opgezet (Ontwikkeling, Test, Acceptatie, Productie), of een vereenvoudigde versie daarvan, bijvoorbeeld alleen Test en Productie. In WordPress MU kun je voor elk van deze stappen een aparte website aanmaken. Zodra een stap is afgerond, kun je de website overkopiëren naar de volgende website. Alle websites draaien echter op dezelfde server, waardoor je minder snel voor verrassingen komt te staan als een website live gaat.</p>
<p><strong>Aggregatie</strong><br />
Heb je een hele serie weblogs onder WordPress MU en wil je een voorpagina maken met een overzicht van de laatste blogberichten, of een tagcloud van alle blogs? Er bestaan diverse plugins die dit voor je kunnen doen, zoals <a href="http://wpmudev.org/project/AHP-Sitewide-Recent-Posts-for-WPMU">AHP Sitewide Recent Posts for WPMU</a> en <a href="http://wordpress.org/extend/plugins/wordpress-mu-sitewide-tags/">WordPress MU Sitewide Tags Pages</a>. Een voorbeeld van zo&#8217;n totaaloverzicht zie je op <a href="http://weblogs.nos.nl">weblogs.nos.nl</a> en <a href="http://www.blogo.nl">www.blogo.nl</a>.</p>
<p><strong>Geavanceerde rechtenstructuur</strong><br />
Bij WordPress werd al onderscheid gemaakt tussen auteurs en beheerders, maar bij WordPress MU gaat de rechtenstructuur nog een stap verder. Je hebt daar beheerders voor de hele WordPress MU-installatie en ook beheerders per afzonderlijke site, of combinatie daarvan. Gebruikers kunnen zowel redacteur als beheerder zijn, of zelfs redacteur van de ene site en beheerder van de andere site. Je hoeft maar één keer je wachtwoord te wijzigen en de wijziging geldt voor alle websites.</p>
<h2>En de nadelen van WordPress MU?</h2>
<p>Tot zover allemaal goed nieuws. Afgelopen jaar heb ik ook een aantal minpunten van WordPress MU ondervonden.</p>
<p><strong>Beperkte compatibiliteit</strong><br />
Het overgrote deel van alle WordPress-plugins en themes is gemaakt voor de klassieke WordPress-versie. De meeste draaien ook wel op WordPress MU, maar soms vraagt het wat extra programmeerinspanning om een <a href="http://codex.wordpress.org/WPMU_Plugin_Compatibility">plugin</a> of <a href="http://codex.wordpress.org/WPMU_Theme_Compatibility">theme</a> ook daar goed te laten werken. Het is me ook zelf overkomen: je koopt voor 75 dollar een mooi WordPress-theme, bij installatie blijkt die niet geschikt voor WPMU, maar dat stond niet op de site toen ik dat theme kocht.</p>
<p><strong>Downtime bij upgraden</strong><br />
Is er een belangrijke nieuwe WordPress-versie verschenen? Bij WPMU hoef je maar één installatie te upgraden. Maar dat is tegelijkertijd ook een nadeel: mocht de upgrade niet vlekkeloos verlopen (bijvoorbeeld omdat een van de plugins niet compatibel is met de nieuwe versie), dan zijn álle websites op die installatie uit de lucht totdat jij het probleem hopelijk hebt opgelost.</p>
<p><strong>Grotere kwetsbaarheid</strong><br />
Ook hacks brengen grotere risico&#8217;s met zich mee bij WordPress MU. Zoals gezegd maken alle websites gebruik van dezelfde MySQL-database. Als een WPMU-installatie is gekraakt, dan kunnen álle websites verloren gaan.</p>
<p><strong>Niet up-to-date</strong><br />
WordPress MU is gebaseerd op de programmeercode van WordPress. Zodra een beveiligingslek wordt gevonden, verschijnt een nieuwe versie van WordPress. Daarna duurt het meestal een paar dagen, of zelfs nog langer, voordat ook WordPress MU eindelijk is bijgewerkt.<br />
Uiteraard heb ik er begrip voor dat open-source software grotendeels vrijwilligerswerk is en dat veel ontwikkelaars dit naast hun reguliere baan doen. Toch zit deze vertraging in het updaten van WPMU mij niet lekker. Voor hackers is het immers een kleine moeite om een script te schrijven dat internet afzoekt naar WordPress MU-websites die nog niet up-to-date zijn. Als het dagen duurt voordat een WPMU-site weer veilig is, dan hebben ze zeeën van tijd om toe te slaan.</p>
<p><strong>Subdomeinen en submappen</strong><br />
Zoals gezegd kun je bij de installatie van WordPress MU kiezen of een website een subdomein (<em>sitenaam.laterna.nl</em>) of een submap (<em>laterna.nl/sitenaam</em>) moet worden van het hoofddomein. Die keuze kun je maar één keer maken. Het is wel mogelijk om later alsnog te switchen van het een naar het ander, maar dat is bepaald niet eenvoudig en de benodigde stappen worden bij mijn weten nergens op de officiële website uitgelegd (wel op <a href="http://welcome.totheinter.net/2009/05/06/changing-wordpress-mu-from-subdomains-to-subdirectories/">particuliere blogs</a>). Doorgaans wordt aangeraden om in deze situatie <a href="http://mu.wordpress.org/forums/topic/11308">alles opnieuw te installeren</a>.<br />
Verder heeft WordPress MU nog een onhebbelijkheid: hij laat standaard <em>www.</em> in het adres van het hoofddomein weg. Mijn website heeft daardoor een jaar lang <em>laterna.nl</em> als adres gehad, in plaats van <em>www.laterna.nl</em>.<br />
Nu maakte dat in de praktijk niet zo gek veel uit: je werd van <em>www.laterna.nl</em> automatisch doorgelinkt naar <em>laterna.nl</em>. En ook hier kun je <a href="http://britg.com/2008/11/27/wordpress-mu-stubornly-forces-no-www-subdomains-huh-and-how-to-fix-it/">met enig kunst- en vliegwerk</a> het <em>www.</em> wel weer terugkrijgen in het adres. Toch raakt dit bij mij een principieel punt: ik wil dit soort dingen zélf beslissen. Waarom moet WPMU per se afwijken van de conventie dat alle webadressen met www beginnen?</p>
<p><strong>Conflicten met andere toepassingen</strong><br />
Zodra je op een Linux-server kiest voor installatie van WordPress MU op subdomeinen, dan kunnen er complicaties optreden. Afhankelijk van hoe je de DNS hebt gewijzigd, kunnen bestaande subdomeinen opeens niet meer werken, bijvoorbeeld webmail.laterna.nl. Dit is allemaal wel op te lossen, maar het rechtzetten van DNS-settings is tijdrovend omdat sommige wijzigingen pas na enkele uren effect hebben.<br />
Als je geen toegang hebt tot je eigen DNS, dan is mijn advies: installeer WPMU-websites als submappen, niet als subdomeinen &#8211; het kan je een heleboel rompslomp schelen.</p>
<h2>Kortom?</h2>
<p>Het is niet mijn bedoeling om WordPress MU hier af te kraken &#8211; alleen maar om de plussen en minnen in kaart te brengen.</p>
<p>Voor mij persoonlijk is WPMU niet de juiste oplossing gebleken. Ik beheer maar een handjevol weblogs en ben tot de conclusie gekomen dat WordPress MU in mijn situatie meer overhead oplevert dan bespaart. Inmiddels ben ik weer teruggegaan naar afzonderlijke WP-installaties.</p>
<p>Toch zijn er situaties waar WPMU wel degelijk een goede oplossing is. Ik denk dan aan een combinatie van de volgende omstandigheden:</p>
<ul>
<li>schaal: je hebt te maken met meer dan pakweg 5 WordPress-websites</li>
<li>uniformiteit: alle websites hebben grote overeenkomsten in vormgeving en functionaliteit, zodat het beheer van themes en plugins overzichtelijk blijft</li>
<li>heldere taakverdeling: je werkt met meerdere mensen en kunt de taken van <em>admin</em> en <em>author</em> goed scheiden</li>
</ul>
<p>Ook denk ik dat WordPress MU hogere eisen stelt aan de rol van beheerder:</p>
<ul>
<li>technische kennis: Linux, DNS, PHP, MySQL-databases, zelf kunnen sleutelen aan themes en plugins (mochten deze niet goed werken in WPMU)</li>
<li>beschikbaarheid: in geval van beveiligingsincidenten moet de admin snel kunnen ingrijpen en tijdens zijn vakantie moet er altijd een plaatsvervanger zijn</li>
</ul>
<p>Kan jouw organisatie of team voldoen aan deze voorwaarden? Ga dan gerust aan de slag met WordPress MU, bij verantwoord gebruik zul je er veel plezier van hebben.</p>
<p>En anders: denk er nog eens goed over na. Misschien is dan de klassieke versie van WordPress nog zo gek niet &#8211; ook al moet je die voor elke website apart installeren.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.laterna.nl/200912/wordpress-mu-ervaringen.php/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Movable Type wordt open-source</title>
		<link>http://www.laterna.nl/200706/movabletype-wordt-open-source.php</link>
		<comments>http://www.laterna.nl/200706/movabletype-wordt-open-source.php#comments</comments>
		<pubDate>Tue, 05 Jun 2007 15:41:43 +0000</pubDate>
		<dc:creator>Wessel</dc:creator>
				<category><![CDATA[Ontwikkelingen]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[Movable Type]]></category>
		<category><![CDATA[open-source]]></category>

		<guid isPermaLink="false">http://www.laterna.nl/200706/movabletype-wordt-open-source.php</guid>
		<description><![CDATA[Via Peter Olsthoorn een interessant nieuwtje van Maarten Schenk, werkzaam bij Six Apart: er is een bèta-versie verschenen van Movable Type 4.0. Een greep uit de nieuwe features: een totaal vernieuwde gebruikersinterface, een nieuwe WYSIWIG-editor, nieuwe import/export- en backup/restore-functies, een blogdashboard met statistieken, OpenID-ondersteuning, installatiewizard, ondersteuning voor losse pagina&#8217;s, ingebouwd asset-management voor het beheer van [...]]]></description>
			<content:encoded><![CDATA[<p>Via Peter Olsthoorn een interessant <a href="http://www.blogologie.be/2007/06/movable_type_40.html">nieuwtje van Maarten Schenk</a>, werkzaam bij Six Apart: er is een bèta-versie verschenen van Movable Type 4.0. Een greep uit de nieuwe features:</p>
<ul>
<li>een totaal vernieuwde gebruikersinterface,</li>
<li>een nieuwe WYSIWIG-editor,</li>
<li>nieuwe import/export- en backup/restore-functies,</li>
<li>een blogdashboard met statistieken,</li>
<li>OpenID-ondersteuning,</li>
<li>installatiewizard,</li>
<li>ondersteuning voor losse pagina&#8217;s,</li>
<li>ingebouwd asset-management voor het beheer van opgeladen bestanden en foto&#8217;s</li>
</ul>
<p>En nog belangrijker nieuws: Movable Type wordt open-source. Dat kan ik alleen maar toejuichen, want eerder schreef ik nog over het vage <a href="http://www.laterna.nl/200704/wordpress-vs-movabletype-de-vergelijking.php">Mambo-achtige tweesporenbeleid van Six Apart</a>: een beetje commercieel, een beetje open-source. Het lijkt erop dat Six Apart voor het overweldigende succes van WordPress door de knieën gaat en niet alleen WordPress-achtige features introduceert, maar ook definitief kiest voor een open-source aanpak.</p>
<p>Enkele weken geleden schreef ik nog over een <a href="http://www.laterna.nl/200705/templatesbrowsercom-linkspam-wordpress.php">weeffout in WordPress</a>, namelijk gratis themes waarin stukjes (mogelijk onveilige) PHP-scripting voorkomen. Als de nieuwe MT-versie inderdaad zo&#8217;n grote stap voorwaarts is, dan is de keuze voor mij duidelijk: dan blijf ik voor mijn belangrijkste sites voorlopig Movable Type gebruiken.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.laterna.nl/200706/movabletype-wordt-open-source.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Een simpele zakelijke website met WordPress</title>
		<link>http://www.laterna.nl/200704/een-simpele-zakelijke-website-met-wordpress.php</link>
		<comments>http://www.laterna.nl/200704/een-simpele-zakelijke-website-met-wordpress.php#comments</comments>
		<pubDate>Wed, 18 Apr 2007 19:46:15 +0000</pubDate>
		<dc:creator>Wessel</dc:creator>
				<category><![CDATA[Eigen werk]]></category>
		<category><![CDATA[Handig]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[themes]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.laterna.nl/200704/een-simpele-zakelijke-website-met-wordpress.php</guid>
		<description><![CDATA[Na een e-mailwisseling met een opdrachtgever ben ik de laatste week aan het experimenteren geslagen met WordPress, dat ik eerder deze maand vergeleek met MovableType. Ik schreef dat je WordPress niet alleen voor weblogs kunt gebruiken, maar ook als een simpel contentmanagementsysteem voor een bescheiden zakelijke website. Is het inderdaad zo simpel, vroeg die opdrachtgever [...]]]></description>
			<content:encoded><![CDATA[<p>Na een e-mailwisseling met een opdrachtgever ben ik de laatste week aan het experimenteren geslagen met WordPress, dat ik eerder deze maand <a href="http://www.laterna.nl/200704/wordpress-vs-movabletype-de-vergelijking.php">vergeleek met MovableType</a>.</p>
<p>Ik schreef dat je WordPress niet alleen voor weblogs kunt gebruiken, maar ook als een <a href="http://www.laterna.nl/200704/wordpress-vs-movabletype-de-vergelijking.php">simpel contentmanagementsysteem</a> voor een bescheiden zakelijke website. Is het inderdaad zo simpel, vroeg die opdrachtgever zich af?</p>
<p>Mijn eerste test is te bekijken op <a href="http://www.klog.nl">www.klog.nl</a>. Het enige wat ik nog niet voor elkaar heb, is de volgorde van de statische pagina&#8217;s rechts. Waarschijnlijk zie ik hierbij iets heel simpels over het hoofd.</p>
<p>De volgende stap: een <em>theme</em> downloaden en kijken hoe deze testsite met voornamelijk statische pagina&#8217;s er dan uit komt te zien. Wordt vervolgd!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.laterna.nl/200704/een-simpele-zakelijke-website-met-wordpress.php/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>WordPress versus Movable Type: een vergelijking</title>
		<link>http://www.laterna.nl/200704/wordpress-movabletype-vergelijking.php</link>
		<comments>http://www.laterna.nl/200704/wordpress-movabletype-vergelijking.php#comments</comments>
		<pubDate>Fri, 06 Apr 2007 10:06:32 +0000</pubDate>
		<dc:creator>Wessel</dc:creator>
				<category><![CDATA[Commentaar]]></category>
		<category><![CDATA[Ontwikkelingen]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[Movable Type]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[open-source]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[spam]]></category>
		<category><![CDATA[themes]]></category>
		<category><![CDATA[webhosting]]></category>
		<category><![CDATA[weblog]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.laterna.nl/200704/wordpress-vs-movabletype-de-vergelijking.php</guid>
		<description><![CDATA[Zoals vorige maand beloofd zal ik hier mijn eerste ervaringen posten met het weblogsysteem WordPress. Ik zal die gelijk afzetten tegen concurrent Movable Type, dat ik al vier jaar gebruik, met name voor Tweevoeter. Ga er maar even voor zitten, want dit wordt een lang verhaal. Brontaal, installatie en hosting WordPress is een standaard PHP/MySQL-toepassing. [...]]]></description>
			<content:encoded><![CDATA[<p>Zoals vorige maand <a href="http://www.laterna.nl/200703/nieuwe-website.php">beloofd</a> zal ik hier mijn eerste ervaringen posten met het weblogsysteem <a href="http://wordpress.org/">WordPress</a>. Ik zal die gelijk afzetten tegen concurrent <a href="http://www.movabletype.org/">Movable Type</a>, dat ik al vier jaar gebruik, met name voor <a href="http://www.tweevoeter.nl">Tweevoeter</a>. Ga er maar even voor zitten, want dit wordt een lang verhaal.<span id="more-109"></span></p>
<p><strong>Brontaal, installatie en hosting</strong><br />
WordPress is een standaard PHP/MySQL-toepassing. Bijna alle hostingproviders ondersteunen deze combinatie, dus installatie zal zelden een probleem vormen. De installatieprocedure is bijzonder gebruiksvriendelijk. Het enige addertje onder het gras is dat sommige bestanden (bijvoorbeeld .htaccess) en mappen (wp-content) schrijfbaar moeten zijn &#8211; anders kun je bijvoorbeeld geen themes handmatig aanpassen via de WordPress-interface.</p>
<p>Movable Type is in Perl geschreven, met andere woorden: het is een CGI-script. Ook dit wordt vrij algemeen ondersteund. Wel heb ik bij verschillende providers ervaren dat installatie soms wat meer trekken en duwen vergt, omdat de rechten op alle bestanden heel precies moeten worden ingesteld &#8211; anders krijg je een &#8216;internal server error&#8217;. Ook heb ik meer dan eens meegemaakt dat Movable Type opeens niet meer draaide na een serverupgrade door de provider. Gelukkig was dit meestal vrij snel weer opgelost.</p>
<p>Movable Type draait naar keuze ook op andere databases dan MySQL. Zelfs op helemaal geen database (hij gebruikt dan gewoon het filesysteem voor opslag), maar in één geval heb ik ervaren dat Movable Type&#8217;s eigen dataopslag niet robuust is en bijna elke maand wel een keer vastloopt. Dus elke dag een backup maken van je hele MovableType-installatie is in dit geval een must.</p>
<p>Nog een voordeel van Movable Type ten opzichte van WordPress: met één Movable Type-installatie kun je een onbeperkt aantal weblogs aanmaken en beheren. Bij WordPress kun je wel meerdere weblogs op dezelfde site opzetten, maar alleen door WordPress steeds opnieuw te installeren in verschillende submappen. Dat betekent dat als je een nieuwe WordPress-versie wilt installeren, je álle installaties stuk voor stuk moet upgraden.</p>
<p><strong>Interface</strong><br />
Dit is een kwestie van smaak. De Movable Type-interface vind ik er strakker en professioneler uitzien, maar mijn ervaring is dat die van WordPress veel intuïtiever in elkaar zit. Bij WordPress lijken alle opties gegroepeerd rond de gebruiker: wat zijn de belangrijkste dingen die hij met een weblog doet? Bij Movable Type lijkt vooral het systeem zelf met al zijn mogelijkheden centraal te staan.</p>
<p>In ieder geval hoef je bij WordPress minder te zoeken om een bepaalde optie te vinden. Bij zowel Movable Type als WordPress heb ik inmiddels ervaring met het inwerken van nieuwe gebruikers. Bij Movable Type kost dat enige tijd en training, maar bij WordPress hoef je de gebruiker bijna niets uit te leggen. Ik heb gemerkt dat zelfs kinderen van 10 jaar er in een mum van tijd mee kunnen werken, mits je wel de Nederlandse versie installeert.</p>
<p><strong>Semi-statisch vs. dynamisch: voordelen</strong><br />
Een belangrijk technisch verschil tussen WordPress en Movable Type is dat pagina&#8217;s van WordPress-weblogs dynamisch worden gegenereerd vanuit de MySQL-database. Het nadeel is echter dat een veelbezochte WordPress-weblog de MySQL-server flink kan belasten. Dat gebeurde bijvoorbeeld vorig jaar, toen Sargasso de Dutch Bloggies won en <a href="http://www.sargasso.nl/archief/2006/03/13/this-is-your-projectlijder-speaking/">de site vervolgens op tilt sloeg</a>.</p>
<p>Een bijkomend nadeel van dynamische pagina&#8217;s is gelegen in Google-advertenties. Wie Google-advertenties op zijn site heeft staan en zijn logfiles wel eens bekijkt, ziet dat pagina&#8217;s die nog niet in de Google-index staan dubbel worden opgevraagd: eerst door de bezoeker en 1 of 2 seconden later door de Google-server, want die moet de pagina even bekijken om bijpassende advertenties te genereren. Dat betekent een grotere MySQL-serverbelasting &#8211; als je site nog helemaal niet in Google zit zelfs een verdubbeling.</p>
<p>Bij Movable Type zal dit niet gauw gebeuren. Een Movable Type-site bestaat uit semi-statische pagina&#8217;s, die alleen bij updates en reacties opnieuw worden gegenereerd. Als een website duizenden bezoekers per dag trekt, blijft het aantal MySQL-queries dus toch beperkt. En zelfs als de MySQL-server tijdelijk down gaat, kan iedereen de site blijven bezoeken &#8211; alleen zal de reactiemogelijkheid dan even niet werken. Omvangrijke Nederlandse websites die Movable Type gebruiken, zijn <a href="http://www.geenstijl.nl">GeenStijl</a> en <a href="http://www.tweevoeter.nl">Tweevoeter</a>. Tweevoeter trekt zo&#8217;n 3500 bezoekers per dag, maar de serverload komt zelden boven de 0,1.</p>
<p><strong>Semi-statisch vs. dynamisch: nadelen</strong><br />
Gezien het voorgaande lijkt het erop dat een semi-statische website alleen maar voordelen biedt tegenover dynamische websites. Er zijn ook nadelen. Allereerst is het verwijderen van pagina&#8217;s uit een semi-statische site nogal omslachtig. Bij Movable Type moet je allereerst de betreffende &#8216;entry&#8217; verwijderen, vervolgens een &#8216;rebuild&#8217; doen om de héle site opnieuw te genereren, en het vervelendste van allemaal: via FTP moet je de statische pagina handmatig van de server verwijderen, om te voorkomen dat statische pagina&#8217;s en dynamische MySQL-inhoud uit de pas gaan lopen. Deze werkwijze vind ik simpelweg niet professioneel. Bij WordPress is dit alles veel simpeler: weg is weg.</p>
<p>Een ander nadeel van semi-statische sites zijn zoekacties van gebruikers. Bij WordPress maakt het qua performance niet uit of je een &#8216;gewone&#8217; pagina ziet, of een pagina met zoekresultaten. Maar bij Movable Type is het verschil enorm, zowel voor de gebruiker als de beheerder. Alleerst merkt de gebruiker dat zoekacties al behoorlijk lang kunnen duren, soms wel een halve minuut. Ik heb ooit ergens gelezen dat Movable Type de MySQL-database sequentieel (!) doorloopt en niet via indexen, dus hoe meer berichten, hoe langer het zoeken duurt. Vervolgens moeten de zoekresultaten ook nog eens &#8216;on the fly&#8217; worden opgemaakt. En als je de al eerder genoemde Google-advertenties op je site hebt staan, wordt het nog twee keer zo erg, want na elke zoekactie doet Google precies dezelfde zoekactie 1 of 2 seconden nog eens opnieuw om bijpassende advertenties te kunnen genereren.</p>
<p>Ook qua beheer heeft dit gevolgen. Movable Type heeft een onderdeel om templates te beheren, waarmee je webpagina&#8217;s naar eigen smaak kunt opmaken. Maar die templates betreffen alleen de statische pagina&#8217;s, niet de opmaak van zoekresultaten. Voor dat laatste bestaan wel aparte templates, maar die kun je alleen via FTP aanpassen, niet via de Movable Type-interface. Ook dit vind ik niet professioneel. Zelf heb ik dit opgelost door een extra weblog met de naam Systeem aan te maken en daar bij de &#8216;index templates&#8217; alle stylesheets, Javascript-bestanden, MT-zoektemplates en andere systeembestanden (.htaccess, robots.txt, MT-configuratie) onder te brengen. Kan ik toch alles beheren via mijn webbrowser &#8211; en een indirect voordeel: dan hoef ik alleen backups te maken van de MySQL-database.</p>
<p>Als je in MovableType-templates ook PHP-regels zet, krijg je met een bijkomend nadeel te maken. Bij semi-statische pagina&#8217;s is PHP-code geen enkel probleem (mits je de extensie van alle bestanden natuurlijk instelt op .php), maar in tegenstelling tot de rest van een Movable Type-site worden zoekresultaten wel dynamisch gegenereerd, en wel door een Perl-script. Eventuele PHP-regels in een zoektemplate worden niet uitgevoerd door Perl en zijn zelfs leesbaar als je de HTML-bron opvraagt. Erg onhandig en zelfs onveilig, want leesbare PHP-broncode kan hackers een indicatie geven waar belangrijke bestanden op je server staan.</p>
<p><strong>Layout: themes vs. templates</strong><br />
Zowel Movable Type als WordPress hebben de mogelijkheid om een eigen layout te maken voor je weblog. Daarnaast kun je ook kant-en-klare &#8216;themes&#8217; downloaden. Bij WordPress ligt de nadruk op het tweede, bij Movable Type op het eerste.</p>
<p>WordPress gaat vooral uit van themes, die je eventueel met een simpele editor nog iets kunt verfijnen (zoals ik heb gedaan met de layout die je nu ziet). Ook Movable Type heeft de mogelijkheid om kant-en-klare themes te gebruiken, maar die is er pas later bijgekomen. Je moet er ook een plug-in voor downloaden.</p>
<p>Bij Movable Type zijn de makers overduidelijk uitgegaan van professionele gebruikers die in staat zijn om zelf via &#8216;templates&#8217; een eigen layout van de grond af aan op te bouwen. Movable Type heeft er zelfs een eigen macrotaal voor ontwikkeld, werkelijk alles kun je ermee maken. Op dit punt zit Movable Type duidelijker beter in elkaar dan WordPress.</p>
<p>Het aanpassen van een WordPress-theme heeft wat meer weg van &#8216;hacken&#8217;: om de bijbehorende bestanden aan te passen zit je te wroeten in een niet al te doorzichtige combinatie van HTML, CSS en zelfs PHP. Ook zijn er verschillende WordPress-themes die de basisinstellingen aan hun laars lappen. In WordPress kun je bijvoorbeeld een standaard datumformaat instellen (&#8220;6 april 2007&#8243;), maar sommige themes trekken zich er niets van aan en kiezen hun eigen weergave (&#8220;April 6th, 2007&#8243;). Ook zijn de meeste WordPress-themes niet in het Nederlands vertaald &#8211; maar dat geldt ook voor Movable Type.</p>
<p>Hoe dan ook, zowel voor Movable Type als WordPress zijn honderden &#8216;themes&#8217; te vinden om je weblog een eigen opmaak te geven. Ondanks genoemde minpunten geef ik de voorkeur aan WordPress-themes: die zijn veel uitgebreider zijn en ook veel gevarieerder. Wie niet alleen maar een leesbare en functionele weblog wil hebben maar ook iets visueel aantrekkelijks, vindt bij WordPress veel meer van zijn gading. Dan maar zelf de theme in het Nederlands vertalen.</p>
<p><strong>Plug-ins</strong><br />
Ook als het gaat om plug-ins zijn WordPress en Movable Type ruimschoots voorzien. Werkelijk alles is te vinden: van comment-spamfilters tot aan mogelijkheden om anderssoortige content, bijvoorbeeld je eigen foto&#8217;s uit Flickr, weer te geven in een aparte kolom.<br />
WordPress lijkt zelfs nog iets verder te gaan, je vindt er bijvoorbeeld ook een plug-in om een simpel forum of een fotoalbum op te zetten. Ook zijn er mogelijkheden om WordPress te integreren met andere bekende toepassingen, zoals Phorum, Coppermine en Gallery.</p>
<p><strong>Licenties en open-source</strong><br />
WordPress is een echt open-source pakket. Je kunt het gratis gebruiken en er worden op grote schaal plug-ins en themes uitgewisseld.<br />
Bij Movable Type ligt het wat minder duidelijk. Weliswaar is er een grote en actieve gebruikersgroep, waardoor het pakket duidelijk open-source trekjes heeft. Maar uiteindelijk is Movable Type toch het product van een commercieel bedrijf. Je mag het alleen voor niet-commercieel gebruik gratis gebruiken, in alle andere gevallen moet je ervoor betalen.<br />
Op zich is dat slim bekeken van <a href="http://www.sixapart.com/">Six Apart</a>, de makers van Movable Type. Een grote gebruikersgroep zorgt voor veel mond-tot-mond-reclame &#8211; dat scheelt weer advertentiekosten. En al die plug-ins van gebruikers drukken de kosten op de verdere ontwikkeling van het pakket.<br />
Toch kun je je afvragen hoe lang Six Apart dit eten van twee walletjes kan volhouden. Zoals bekend is Mambo enkele jaren geleden ten onder gegaan aan een soortgelijke opzet, toen de commerciële belangen en het open-source gedachtengoed toch te ver uiteen bleken te lopen. Uiteindelijk ging de open-source tak zelfstandig verder onder de naam Joomla. Krijgen we straks van Movable Type ook een open-source afsplitsing? Afwachten maar.</p>
<p><strong>Alleen maar weblogs?</strong><br />
Met zowel WordPress als Movable Type kun je ook prima een homepage of zakelijke site maken, dus zonder weblogfunctie. WordPress vind ik daarvoor het meest geschikt. Hier wordt expliciet onderscheid gemaakt tussen het schrijven van berichten en van pagina&#8217;s. Die pagina&#8217;s kun je bovendien een hierarchische structuur geven. Het hangt echter wel af van de gekozen &#8216;theme&#8217; in hoeverre die pagina&#8217;s overzichtelijk navigeerbaar zijn. Een mooi uitklapmenu ben ik tot nu toe in nog geen enkel WordPress-theme tegengekomen. Met een mooi navigatiemenu zou WordPress denk ik het ideale instap-cms zijn en een deel van de Joomla-markt kunnen wegkapen.</p>
<p>Ook in Movable Type is het mogelijk om iets anders dan een weblog te maken, maar daar ontbreekt de hierarchische structuur &#8211; die moet je zelf simuleren door het menu met alle onderdelen van de site handmatig te onderhouden. Wel weer prettig bij Movable Type is de mogelijkheid meerdere weblogs aan te maken. De een kun je gebruiken voor nieuwsberichten, de andere voor tijdloze informatiepagina&#8217;s. Met enige kunstgrepen zijn die twee weer te integreren, zodat je bijvoorbeeld op een informatiepagina onderaan een overzichtje van relevante nieuwsberichten aantreft.</p>
<p><strong>Spam</strong><br />
Dan de vraag: hoe gaan Movable Type en WordPress om met &#8216;comment spam&#8217;? Beide pakketten hebben plug-ins om spam tegen te gaan, maar ik vind die van WordPress (de plug-in Akismet) beter functioneren. In één maand tijd heeft die bij mij nog geen enkele fout gemaakt in het onderscheiden van spam en gewone reacties.</p>
<p>De spamdetector van MT kun je instellen op een schaal van -10 (soepel) tot +10 (agressief). Bij mij geeft +1 of +2 doorgaans de beste resultaten, maar toch blijven er dingen doorheen glippen. Er is maar één mogelijkheid om spam met zekerheid tegen te gaan en dat is je weblog zo instellen dat alle reacties eerst door een beheerder moeten worden goedgekeurd. Maar dan moet je wel een vervanger zoeken als je met vakantie gaat.</p>
<p><strong>Ondersteuning</strong><br />
Ten slotte de ondersteuning. De documentatie is in beide gevallen goed te noemen. De website van Movable Type c.q. Six Apart ziet er professioneler uit, maar ik vind het altijd lastig om snel iets terug te vinden &#8211; om maar eens wat te noemen: welke tag moet je ook alweer gebruiken om alleen de tien meest recente berichten in een datumarchief te tonen? Ook op dit punt is de WordPress-site intuïtiever.<br />
Beide pakketten hebben een supportforum waar je vragen kunt stellen. Op veel vragen is al een antwoord te vinden.</p>
<p><strong>Conclusie</strong><br />
Movable Type is overduidelijk gericht op een professionele doelgroep. De configuratiemogelijkheden zijn uitgebreid, maar de leercurve is veel steiler dan bij WordPress. Door de semi-statische opzet is Movable Type vooral geschikt voor veelbezochte en gecompliceerde sites, bijvoorbeeld <a href="http://www.treehugger.com">Treehugger</a>. Het pakket kun je het beste gebruiken als je een webmaster of systeembeheerder tot je beschikking hebt. Wel heeft Movable Type een paar flinke tekortkomingen &#8211; vooral zoekopdrachten van gebruikers en het verwijderen van berichten zijn niet bijster professioneel geïmplementeerd.</p>
<p>WordPress is ideaal voor particulieren en voor professionals die heel snel resultaat willen zien. Het is gemakkelijk te installeren, gemakkelijk in gebruik en heeft een uitstekend spamfilter. Door de overvloed aan plug-ins en themes kun je in een paar uur een overtuigende weblog in elkaar zetten. Het pakket is bovendien ook geschikt voor niet-weblogs, je zou er prima een kleine site met vaste informatiepagina&#8217;s mee kunnen maken. Wat me persoonlijk trekt aan WordPress is dat de gebruikersgemeenschap veel enthousiasme uitstraalt. Als WordPress-gebruiker krijg je echt het gevoel dat webloggen een feestje is.</p>
<p>Of ik WordPress voor deze site blijf gebruiken, is echter nog maar de vraag. De eerste ervaringen zijn wel heel positief, maar ik mis de mogelijkheid om meerdere weblogs naast elkaar te installeren. Ook zou ik meer grip willen hebben op hoe de archieven worden georganiseerd en hoe de site wordt opgenomen in Google. Maar voor enkele andere sites, met name <a href="http://www.klimaatnieuws.nl">Klimaatnieuws.nl</a>, denk ik wel dat ik met WordPress beter af ben dan met Movable Type. Welke van de twee je kiest, hangt dus vooral van de omstandigheden af.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.laterna.nl/200704/wordpress-movabletype-vergelijking.php/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Een open-source webwinkel selecteren</title>
		<link>http://www.laterna.nl/200703/een-open-source-webwinkel-selecteren.php</link>
		<comments>http://www.laterna.nl/200703/een-open-source-webwinkel-selecteren.php#comments</comments>
		<pubDate>Wed, 28 Mar 2007 08:00:41 +0000</pubDate>
		<dc:creator>Wessel</dc:creator>
				<category><![CDATA[Commentaar]]></category>
		<category><![CDATA[betalen]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[e-commerce]]></category>
		<category><![CDATA[open-source]]></category>

		<guid isPermaLink="false">http://www.laterna.nl/200703/een-open-source-webwinkel-selecteren.php</guid>
		<description><![CDATA[Een vraag van een zakelijke relatie enkele dagen geleden: ik wil een winkel op mijn website, maar welk systeem moet ik kiezen? Zijn er geschikte open-source webwinkelsystemen, of ben ik er veel geld aan kwijt? Met webwinkels heb ik nauwelijks ervaring, dus een pasklaar antwoord kan ik niet geven &#8211; wel een paar criteria bij [...]]]></description>
			<content:encoded><![CDATA[<p>Een vraag van een zakelijke relatie enkele dagen geleden: ik wil een winkel op mijn website, maar welk systeem moet ik kiezen? Zijn er geschikte open-source webwinkelsystemen, of ben ik er veel geld aan kwijt?</p>
<p>Met webwinkels heb ik nauwelijks ervaring, dus een pasklaar antwoord kan ik niet geven &#8211; wel een paar criteria bij de selectieprocedure. Net vanochtend lees ik op de site ECommerce-Guide een korte bespreking van <a href="http://www.ecommerce-guide.com/news/news/article.php/3668061">Five Free Open Source Shopping Carts</a>: osCommerce, Zen Shopping Cart, Agora Shopping Cart, NoPCart en Commerce.Cgi.</p>
<p>De enthousiaste conclusie: ook voor commerciële activiteiten op internet kun je prima volstaan met open-source oplossingen. Dat klinkt leuk, maar een voor Nederlandse websites belangrijke vraag wordt er niet in beantwoord, namelijk: zijn deze winkelwagensystemen ook beschikbaar in andere talen dan Engels?</p>
<p>In Nederland heb je bovendien te maken met specifieke wettelijke bepalingen, zoals de <a href="http://www.postbus51.nl//index.cfm?vid=5DEF460D-C295-519D-1BDAF2679C8DA850&amp;containerid=517415FF-C09F-296A-61FF669427684C44&amp;objectid=4A0ECF88-C09F-296A-612A5894AB9531C2&amp;displaymethod=displaydefaultintro">Wet koop op afstand</a>. Of deze pakketten daaraan (kunnen) voldoen, wordt eveneens niet direct duidelijk.</p>
<p>Dan maar alle vijf uitproberen? Dat hoeft gelukkig niet. Als je op de namen van deze winkelsystemen zoekt binnen het Nederlandse deel van internet, dan valt direct op dat NoPCart bij ons totaal onbekend is. Zen Shopping Cart en Commerce.Cgi worden al wat vaker gebruikt, maar het populairst bij ons blijken Agora Shopping Cart en osCommerce.</p>
<p><a href="http://www.agoracart.com/">Agora Shopping Cart</a> heeft als groot voordeel dat het standaard is opgenomen in <a href="http://netenberg.com/fantastico.php">Fantastico</a>, een verzameling van enkele tientallen gratis programma&#8217;s waarover je vaak gratis kunt beschikken bij hostingprovider die <a href="http://www.cpanel.net/">cPanel</a> aanbieden als beheersinterface voor hun klanten. Alle Fantastico-programma&#8217;s, dus ook Agora, zijn met slechts een paar muisklikken te installeren via het cPanel-menu. Dat is handig voor onervaren webmasters.</p>
<p>Op mij maakt <a href="http://www.oscommerce.com/">osCommerce</a> de beste indruk, want deze oplossing heeft een Nederlandse gebruikersgroep, de <a href="http://www.oscommerce.nl/">osCommerce Nederland</a>. Dan is er in ieder geval ondersteuning in Nederland, en met de Nederlandse vertaling en de wettelijke randvoorwaarden zal het vermoedelijk ook wel oké zijn.</p>
<p>Een volgend selectiecriterium: hoe moeten de klanten betalen? Kunnen ze dat bijvoorbeeld ook met <a href="http://www.ideal-betalen.nl/">iDeal</a> doen, een veelbelovend betaalsysteem dat volgens een recente peiling op <a href="http://www.computertotaal.nl">www.computertotaal.nl</a> al door 40 procent van de Nederlandse internetgebruikers wordt gebruikt? Daar is snel achter te komen met een handige zoekactie, bijvoorbeeld <em>oscommerce ideal</em>.</p>
<p>En een laatste criterium: zijn deze pakketten te integreren in open-source contentmanagementsystemen (Joomla, Typo3, Textpattern) en weblogs (WordPress, Movable Type)?  Ook dit is een kwestie van handig googelen. En anders kun je altijd nog de betreffende website uitpluizen, de lijst van features goed bekijken en het supportforum doornemen.</p>
<p>Wat ik maar wil zeggen: aan de hand van een paar praktische criteria is het enorme aanbod van open-source oplossingen in een kwartiertje tijd snel uit te dunnen tot een of twee kansrijke kandidaten. De volgende stap: downloaden en gewoon maar uitproberen.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.laterna.nl/200703/een-open-source-webwinkel-selecteren.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google-spider vernietigt website</title>
		<link>http://www.laterna.nl/200604/google-spider-vernietigt-website.php</link>
		<comments>http://www.laterna.nl/200604/google-spider-vernietigt-website.php#comments</comments>
		<pubDate>Mon, 03 Apr 2006 14:59:09 +0000</pubDate>
		<dc:creator>Wessel</dc:creator>
				<category><![CDATA[Commentaar]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[Google]]></category>

		<guid isPermaLink="false">http://www.laterna.nl/200604/google-spider-vernietigt-website.php</guid>
		<description><![CDATA[Het lijkt op het eerste gezicht onwaarschijnlijk, maar een verhaal in The Inquirer maakt aannemelijk dat het wel degelijk kan: een website met een slecht contentmanagementsysteem laten slopen door Google. Wat is er gebeurd? Een gebruiker kopieerde een tekst van de ene pagina naar de andere en voegde er een Edit-link aan toe. Google kwam [...]]]></description>
			<content:encoded><![CDATA[<p>Het lijkt op het eerste gezicht onwaarschijnlijk, maar <a href="http://www.theinquirer.net/?article=30640">een verhaal in The Inquirer</a> maakt aannemelijk dat het wel degelijk kan: een website met een slecht contentmanagementsysteem laten slopen door Google.<br />
Wat is er gebeurd? Een gebruiker kopieerde een tekst van de ene pagina naar de andere en voegde er een Edit-link aan toe. Google kwam de link tegen, liep het beheerdersonderdeel binnen en volgde daar alle links, waaronder de link Delete Page. Het gevolg: de hele site systematisch verwijderd.<br />
Is dit Google te verwijten? Nee, natuurlijk niet, het had elke zoekbot kunnen overkomen. Kennelijk gaat het om een slecht beveiligd cms.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.laterna.nl/200604/google-spider-vernietigt-website.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

