Het zat me toch niet lekker en heb het uitgeplozen!
In de .tpl bestanden van phpBB kan geen php-code worden gebruikt. Om nu toch gebruik te maken van de include-functie zijn er een aantal stappen nodig:
- codeer de include-functie in de page_header.php
Ik heb onderstaande code gebruikt:
//include code ob_start(); include("../site_header.php"); $my_header = ob_get_contents(); ob_end_clean(); //include code
De functie ob_start is een functie die een speciale buffer creeert. Dit is noodzakelijk omdat anders de beruchte foutmelding Headers already sent verschijnt (of kan verschijnen). De functie ob_clean maakt de outputbuffer weer leeg.
// // The following assigns all _common_ variables that may be used at any point // in a template. // $template->assign_vars(array( 'MY_HEADER' => $my_header, //send to the header tpl file
Omdat ik gebruik maak van een aparte div voor de header, kan ik de variable in de overall_footer.tpl plaatsen.
De code om de variable te tonen is:
{MY_HEADER}
En hiermee heb ik bereikt dat ik maar 1 bestand hoef aan te passen om de header voor de hele site (weblog, forum en links- en smileypagina’s) aan te passen!