Bonjour,
j'ai une balise [cat=1] dans un $texte
qui ensuite coté client affiche les articles de la catégorie 1 grâce à une fonction shortcode($texte).
j'arrive à afficher tous mes articles, par contre je suis obligé de faire la mise en page des articles dans la fonction shortcode().
je cherche une solution pour pouvoir faire la mise en page des articles dans un autre fichier plus facilement modifiable et de l'inclure dans ma fonction exactement à l'endroit où il y a la balise [cat=1] :
code php :
code cats.php :
le code est simplifié au max bien-sûr...
sinon j'avais bien le include directement dans la fonction mais dans ces cas-là, il est mis soit au début soit à la fin mais pas à la place de [cat=1]
j'ai bien essayé eval() mais sans succès, même quand je n'ai que du texte sans balise php et sans variable...
quelqu'un aurait une solution ?
j'ai une balise [cat=1] dans un $texte
qui ensuite coté client affiche les articles de la catégorie 1 grâce à une fonction shortcode($texte).
j'arrive à afficher tous mes articles, par contre je suis obligé de faire la mise en page des articles dans la fonction shortcode().
je cherche une solution pour pouvoir faire la mise en page des articles dans un autre fichier plus facilement modifiable et de l'inclure dans ma fonction exactement à l'endroit où il y a la balise [cat=1] :
code php :
$texte='bonjour,<br>[cat=1]<br>c'est la fin';
echo shortcode($texte);
function shortcode{
$truc=$texte;
//ce que je veux remplacer [cat=1] par un include('cats.php') pour éviter de faire la mise en page directement dans la fonction :
$truc=preg_replace('[cat=1]',include('cats.php'),$truc);
//ce que j'ai actuellement et que je veux enlever :
$truc=<div>.art('titre').</div>
<div>.art('titre').</div>;
}
return $truc;
code cats.php :
<div><?php echo art('titre')?></div>
<div><?php echo art('titre')?></div>
le code est simplifié au max bien-sûr...
sinon j'avais bien le include directement dans la fonction mais dans ces cas-là, il est mis soit au début soit à la fin mais pas à la place de [cat=1]
j'ai bien essayé eval() mais sans succès, même quand je n'ai que du texte sans balise php et sans variable...
quelqu'un aurait une solution ?