Bestanden includen met PHP

Bestanden includen met PHP

Wanneer je een grotere site krijgt en je hebt een vaste paginaindeling, dan kan het handig zijn dat je een deel van de pagina gaat includen. Hiermee heb je als voordeel dat je bepaalde delen van je website maar een keer hoeft te veranderen en dat je niet al je pagina’s langs moet gaan.

Includen met PHP

Met includen moet je een aantal keuzes maken. We gaan includen met behulp van php. Dit moet de server waar je website op staat dus ondersteunen. PHP kent vier manieren om te includen.

  • include(‘/bestandspad/bestandsnaam/’)
  • require(‘/bestandspad/bestandsnaam/’)
  • include_once(‘/bestandspad/bestandsnaam/’)
  • require_once(‘/bestandspad/bestandsnaam/’)

Het maakt niet uit welke je neemt, het verschil zit hem met name in de foutmeldingen. include_once en require_once gebruik je als het bestand om te includen maar een maal gebruikt mag worden. Het verschil tussen include en require zit hem erin dat include bij een fout een foutmelding genereert en require leidt tot een fatale fout en het afbreken van het script.

Wat mag je includen?
Je mag in principe alle soorten documenten includen. Een .txt, een .html of een .php bestand mag worden geincluded. Veel php schrijvers geven een te includen bestand de extentie .inc mee. Hier gaan we dan ook mee werken. We gaan een tweetal bestanden maken, een voor de bovenkant van de website en een voor het laatste stuk van de site. Deze twee noemen we voor het gemak maar ‘header.inc’ en ‘footer.inc’.

Header en footer
Hierna volgt de code van eerst ‘header.inc’ en dan van ‘footer.inc’. We hebben hiervoor een simpele html pagina gebruikt .

header.inc

<html xmlns=”http://www.w3.org/1999/xhtml” xml:lang=”nl” lang=”nl”>
<head>
<title>Mijn website</title>
</head>

<body>

footer.inc

</body>
</html>

Het includen van de twee bestanden
<?php
include($_SERVER[‘DOCUMENT_ROOT’].’/header.inc’);
?>
<p>Dit is het gedeelte wat je voor iedere pagina afzonderlijk schrijft</p>
<?php
include($_SERVER[‘DOCUMENT_ROOT’].’/footer.inc’);
?>

Het enige wat je aan moet passen is het gedeelte wat hierboven werd genoemd. Wanneer je nu in de header of in de footer een aanpassing doet, dan hoef dat maar een keer en het is direct aangepast in de gehele website. Stel dat je bijvoorbeeld een menu wilt toevoegen aan de bovenzijde van je pagina, dan voeg je deze in ‘header.inc’ in na ‘body’, en dit menu verschijnt op iedere pagina bovenaan, zonder dat je elke pagina langs moet om het menu in te voegen.

Tenslotte SEO technische zaken
In het voorbeeld staat nu de title in de ‘header.inc’. Wil je een en ander SEO technisch beter maken dan zul je deze uit de te includen header moeten halen, aangezien het beter is om iedere pagina een aparte titel mee te geven. Dit geldt bijvoorbeeld ook voor metatags. Zoekmachines hebben het niet zo op pagina’s die allemaal dezelfde metatags en titels hebben. Hou dit in de gaten wanneer je zelf aan de slag gaat met includen. Include alleen die delen die over hetzelfde moeten zijn.

          Leuk als je dit artikel deelt:
Share

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *