Quelqu'un m'avait posé la même question il y a quelques temps, je viens de finir mes "gors cours" je vais pouvoir me replonger dans NewsletTux 2.
Quoiqu'il en soit, il est tout à fait possible de mettre du PHP dans un template, sous 2 conditions :
- que le nom du fichier porte l'extension .php (!)
- qu'on fasse une petite modif au scriptcomme décrit ci-dessous.
Cette modification du système de templates ne modifiera nullement la lecture des templates HTML.Pour procéder à cette modification, ouvrir
admin/write.php et remplacer ligne 411 :
$read_template = TextFileReader(NTUX2_ROOT.SITE_UPLOADDIR.'templates/'.$preview_template);
foreach($read_template as $line_number => $line_template)
{
$regex = "#--NEWSLETTUX--#";
if(preg_match($regex, $line_template, $matches)) // this line has the marker
{
$read_template[$line_number] = str_replace("--NEWSLETTUX--",$preview_message_displayed, $read_template[$line_number]);
};
};
par :
//$read_template = TextFileReader(NTUX2_ROOT.SITE_UPLOADDIR.'templates/'.$preview_template);
$template_uri = SITE_URL.SITE_NTUXDIR.SITE_UPLOADDIR.'templates/'.$preview_template;
$read_template = ReadExternalFile($template_uri);
$read_template = explode("\n",$read_template);
foreach($read_template as $line_number => $line_template)
{
$line_template = RemoveCRLF($line_template);
$regex = "#--NEWSLETTUX--#";
if(preg_match($regex, $line_template, $matches)) // this line has the marker
{
$read_template[$line_number] = str_replace("--NEWSLETTUX--",$preview_message_displayed, $read_template[$line_number]);
};
};
(pour utiliser l'aperçu des newsletters) ainsi que ligne 700 :
if ($array_newsletter['html']['template'] != '')
{
// a template is used
$read_template = TextFileReader(NTUX2_ROOT.SITE_UPLOADDIR.'templates/'.$array_newsletter['html']['template']);
foreach($read_template as $line_number => $line_template)
{
$regex = "#--NEWSLETTUX--#";
if(preg_match($regex, $line_template, $matches)) // this line has the marker
{
$read_template[$line_number] = str_replace("--NEWSLETTUX--",$array_newsletter['html']['body'], $read_template[$line_number]);
};
};
par :
if ($array_newsletter['html']['template'] != '')
{
// a template is used
//$read_template = TextFileReader(NTUX2_ROOT.SITE_UPLOADDIR.'templates/'.$array_newsletter['html']['template']);
//$read_template = ReadExternalFile(NTUX2_ROOT.SITE_UPLOADDIR.'templates/'.$array_newsletter['html']['template']);
$template_uri = SITE_URL.SITE_NTUXDIR.SITE_UPLOADDIR.'templates/'.$array_newsletter['html']['template'];
$read_template = ReadExternalFile($template_uri);
$read_template = explode("\n",$read_template);
foreach($read_template as $line_number => $line_template)
{
$line_template = RemoveCRLF($line_template);
$regex = "#--NEWSLETTUX--#";
if(preg_match($regex, $line_template, $matches)) // this line has the marker
{
$read_template[$line_number] = str_replace("--NEWSLETTUX--",$array_newsletter['html']['body'], $read_template[$line_number]);
};
};
(pour l'utilisation lors de l'envoi des newsletters cette fois).
PS : la version 2.0.6. contiendra ce correctif.