Smarty Forum Index Smarty
The discussions here are for Smarty, a template engine for the PHP programming language.
Récupérer le contenue d'une variable du fichier PHP

 
Post new topic   Reply to topic    Smarty Forum Index -> Language: French
View previous topic :: View next topic  
Author Message
ericstamant
Smarty n00b


Joined: 14 Feb 2012
Posts: 2

PostPosted: Tue Feb 14, 2012 3:03 pm    Post subject: Récupérer le contenue d'une variable du fichier PHP Reply with quote

Bonjour,

Ma demande me semble très simple mais pourtant, je n'arrive pas à trouver de solution, après plusieurs jours de recherche. Si se ne serrait que de PHP, je l'aurais trouvé, mais c'est la première fois que j'ai à utiliser Smarty.

J'utilise WHMCS pour la gestion de mes clients et je souhaite intégrer complètement le script à mon site web. Le seul petit problème, c'est que WHMCS n'ont pas intégrer de solution pour attribuer une meta description unique à chaque page de mon site.

Voici comment ça fonctionne en gros :

Il y a un seul fichier "header.tpl", un peu comme n'importe lequel CMS.

Ensuite, chaque contenu de chaque page se trouve dans un fichier .tpl, exemple : homepage.tpl.

Chaque page template .tpl est associé à un fichier .PHP dans lequel se trouve différente variable, exemple : $pagetitle.

Le fichier header.tpl récupère la variable associé à la bonne page comme cela {$pagetitle} dans le "title" de la page. De cette façon, chaque page à un title différent.

Maintenant, je souhaite faire la même chose pour un meta description. Mais aucune solution ne fonctionne.

Voici se que j'ai tenté de faire :

Fichier index.PHP :

Code:
$pagedescription = 'Description de la page accueil...';


Fichier header.tpl :

Code:
<meta name="description" content="{$pagedescription}" />


Mais comme vous vous en doutez probablement! Ça ne fonctionne pas du tout. Voici quelques autres alternative, qui ne fonctionne pas plus :

.PHP :

Code:
$pagedescription = "This is my test page description";
$smarty->assign('pagedescription', $pagedescription);


header.tpl

Code:
<meta name="description" content="{$pagedescription}" />


Résultat : donne une erreur dans ma page, à la ligne de $smarty->assign

Autre alternative :

header.tpl :

Code:
<meta name="description" content="{$pagedescription}" />


homepage.tpl :

Code:
{php}
$pagedescription = "This is my test page description";
$smarty->assign('pagedescription', $pagedescription);
{/php}


N'affiche aucune description.

header.tpl :

Code:
<meta name="description" content="{php} echo $pagedescription; {/php}" />


homepage.tpl :

Code:
{php}
$pagedescription = "This is my test page description";
{/php}


Cela n'affiche encore rien. Ce qui est dû au fait qu'il y a un echo de la variable avant qu'elle soit déclaré. Si je déclare la variable dans mon header.tpl avant de faire un echo dans la balise title, ça fonctionne. Mais c'est tout à fait illogique. Ce n'est pas se que je souhaite.

Si quelqu'un peu m'aider, je vous en serait très reconnaissant!

Merci!
Back to top
View user's profile Send private message
ericstamant
Smarty n00b


Joined: 14 Feb 2012
Posts: 2

PostPosted: Tue Feb 14, 2012 10:03 pm    Post subject: Solution Reply with quote

J'ai trouvé une solution à mon problème!
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Smarty Forum Index -> Language: French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group
Protected by Anti-Spam ACP