MOTEUR DE TEMPLATE PHPBB3 SIMPLIFIÉ EN PHP5

Signaler
Messages postés
2
Date d'inscription
vendredi 5 juin 2009
Statut
Membre
Dernière intervention
5 juin 2009
-
Messages postés
2
Date d'inscription
samedi 29 janvier 2011
Statut
Membre
Dernière intervention
30 janvier 2011
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/49988-moteur-de-template-phpbb3-simplifie-en-php5

Messages postés
2
Date d'inscription
samedi 29 janvier 2011
Statut
Membre
Dernière intervention
30 janvier 2011

C'est bon j'ai trouver mon erreur , faut juste mettre en majuscule les champs ^^
Messages postés
2
Date d'inscription
samedi 29 janvier 2011
Statut
Membre
Dernière intervention
30 janvier 2011

Bonjour,
J'ai testé avec une simple assignation mais avec un bloc ça ne marche pas.
j'ai testé avec des truc simple mais rien.
Est ce qui faut faire un truc en plus au niveau configuration pour utilisé le assign_block_vars??

merci d'avance
Messages postés
3
Date d'inscription
mardi 9 juin 2009
Statut
Membre
Dernière intervention
6 septembre 2010

Désolé, j'avais oublié de répondre... merci, j'ai pu faire le fichier pour la sélection de langues et le remplacement des variables {L_VAR} dans les templates...
Par contre j'essaye depuis un moment de faire un menu multilingue dynamique(bdd) et en dur mais je n'arrive pas à faire la modification des langues...

mon code langues:

function set_lang()
{

global $template;

// on precise la variable langage
$template->set_language_var($lang);

$lang = array('en','fr');

if (!empty($_GET['lang']) && (in_array($_GET['lang'], $lang)) ) {
$expire = 365*24*3600;
$lang = $_GET['lang'];
setcookie('lang', $lang, time() + $expire, null, null, false, true);
}
elseif (!empty($_COOKIE['lang']) && (in_array($_COOKIE['lang'], $lang))) {
$lang = $_COOKIE['lang'];
}
else {
$lang = "fr";
}
include('lang/'.$lang.'.php');
}

mon code menu:

//Menu supérieur
$menu = array(
'L_HOME' => 'index.php',
'L_PAGE1' => 'page1.php',
'L_PAGE2' => 'page2.php',
'L_PAGE3' => 'page3.php',
'L_PAGE4' => 'page4.php',
'L_PAGE5' => 'page5.php'
);

//Envoie des variables au gabarit
foreach($menu as $key=>$value){
$template->assign_block_vars('nav', array(
'URL' => $value,
'ITEM' => $key));
}

dans ma page il apparait (L_HOME, L_PAGE1, etc...), je vois pas comment faire...

Merci
Messages postés
509
Date d'inscription
samedi 28 juin 2003
Statut
Membre
Dernière intervention
3 août 2010

Dans fr.php:
$lang = array();
$lang['WELCOME'] = 'Bienvenue';

Dans en.php:
$lang = array();
$lang['WELCOME'] = 'Welcome';

Dans le fichier template:(exemple)
{L_WELCOME}



Dans le fichier principal:
// inclure le fichier langue (fr.php ou en.php selon la langue), à toi de gerer ça.
include('fr.php');
$template = new Template('dossier TEMPLATE', 'dossier CACHE', $lang);
$template->set_filenames(array('body' => 'fichier template'));
$template->display('body');
Afficher les 25 commentaires