Inclusion des .tpl de phpBB dans les .html de SPIP

All contributions published for previous SPIP versions

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.

updated on 8 December 2006

Discussion

Une discussion

Comment on this article

Who are you?
  • [Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom