J’ai écrit un petit template pour inclure les .tpl de phpBB dans les .html de SPIP.
Cela permet de n’avoir le code HTML des parties header et footer qu’à un seul endroit par exemple.
Les forums phpBB utilisent une classe ’Template’ qui couvre l’ouverture des fichiers .tpl et leur parsage (remplacement des tags phpBB etc).
Dans les templates .html de SPIP il suffit d’instancier un objet Template phpBB et d’assigner à ses variables internes des valeurs propres à SPIP.
On peut tout à fait utiliser une BOUCLE pour ’remplir’ un tableau de variables phpBB.
Voici un exemple :
(mon dossier phpBB est renommé en ’forums’)
<?
include('forums/includes/template.php');
include('forums/includes/functions.php');
<BOUCLE_environnement_SPIP(RUBRIQUES){id_rubrique=1}>
$template = new Template('forums\\templates\\montemplate'); //rootdir = forums
$template->set_filenames(array(
'header' => 'overall_header.tpl',
'footer' => 'overall_footer.tpl')
);
$template->assign_vars(array(
'S_CONTENT_DIRECTION' => 'ltr',
'SITENAME' => '#NOM_SITE_SPIP',
'PAGE_TITLE' => '[(#TITRE*|texte_script)]')
);
</BOUCLE_environnement_SPIP>
$template->pparse('header');
?>
<h1 class="news" title="News"><span>News</span></h1>
<BOUCLE_posts(BREVES){id_rubrique=1}>
<div class="post">
<h2>#TITRE</h2>
[(#TEXTE|lettrine)]
<p class="accessibilite"><a href="#top">Haut de page</a></p>
<hr />
</div>
</BOUCLE_posts>
<?
$template->pparse('footer');
?>
la fonction pparse() interne à l’objet Template fait l’inclusion du fichier .tpl.
Aucune discussion
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |