Inhoudsopgave (1)


Het stond al een tijdje op mijn lijstje, een inhoudsopgave van alle berichten. Vandaag maar eens dit projectje opgepakt. Om te beginnen moet er natuurlijk bovenaan eerst alle letters van het alfabet komen:

';
echo '0-9 ';
for ($i = 0; $i < 37; $i++):
        echo ''.$letterlinks[$i].' ';
endfor;
?>

Daarna heb ik alle berichten met een query uit de database gehaald en in een array gestopt. Deze array wordt doorloopt het volgende stukje:



Deze twee stukjes zorgen er — samen met nog wat andere code — voor dat het geheel wordt weergegeven zoals te zien is op deze pagina.

Uiteraard is het mogelijk om deze pagina aan te passen, bijvoorbeeld om vanuit het archief een categorie aan te klikken en alle berichten van die categorie te tonen.

Toevoeging 24-12-2007 00:25

Er was nog een kleine aanpassing nodig in de code. Probleem was dat bij het opvragen van de berichten in een categorie de berichten gesorteerd werden op volgorde zoals ze in de database staan en niet op de titel van het bericht. Hiervoor was een kleine toevoeging nodig:

post_title,$b->post_title);
}
usort($posts,"cmp");
?>

4 responses to “Inhoudsopgave (1)”

  1. Da’s een goeie. Had eerst het plan om de cijfers 0 tot 9 apart af te beelden, maar ben daar heel snel van afgestapt. Heb toen inderdaad vergeten om de 37 aan te passen.

  2. Ik snap de $i < 37 niet in de code die de letters afbeeld? Waarschijnlijk een telfoutje en moet het gewoon < 26 zijn? De string begint op 0 te tellen, ofwel de 25e is dan de Z en de 26e bestaat niet. Toch?

  3. Die link was nog in de oude structuur, de structuur had ik tijdje terug aangepast – archives is rubriek geworden – en daarbij had ik vergeten om de oude berichten bij te werken.

Leave a Reply

Your email address will not be published. Required fields are marked *