Bonjour,
Je voudrais pouvoir passer une variable à une fonction <code>do_shortcode</code>. Je n'arrive pas à trouver de solution sur le net. Voilà ce que je cherche à faire :
<?php
$tags = '202';
echo do_shortcode('[tribe_events_list tags="#$tags" limit="3"]');
?>
La variable n'est pas du tout prise en compte.
Si quelqu'un connait la bonne syntaxe …
Merci !
Sur l'aspect technique de PHP :
<?php
// En utilisant des guillemets simples :
// Tu dois absolument utiliser une concaténation.
echo do_shortcode('[tribe_events_list tags="#' . $tags . '" limit="3"]');
// En utilisant des guillemets doubles :
// Tu dois cependant échapper les prochains guillemets doubles à l'intérieur de ta chaîne de caractères...
// Ta variable $tags sera prise en compte.
echo do_shortcode("[tribe_events_list tags=\"#$tags\" limit=\"3\"]");
// Dans le même cas, si jamais ta variable $tags était suivie de quelque chose d'autre (ou serait un tableau),
// Tu pourrais entourer cette variable d'accolades.
echo do_shortcode("[tribe_events_list tags=\"#{$tags}SuperSuffix\" limit=\"3\"]"); // Autrement $tagsSuperSuffix serait ta variable.
echo do_shortcode("[tribe_events_list tags=\"#{$tags['quelqueChose']}\" limit=\"3\"]");
Salut Ramzz1994,
Merci beaucoup pour ce cours de syntaxe. Dans mon cas la première solution suffit mais les autres sont riches d'enseignement.
Je me mets ça de côté : )
Bonne journée !