WordPress shortcode et do_action
Dans cet article, nous allons voir comment peut-on utiliser do_action dans un shortcode, des fois au sein d’un short code, on veut faire appeler à une autre fonction, le cas de do_action qui affiche le contenu, cependant le shortcode construit une variable qui sera affiché à la fin, et on se retrouve avec un affichage du contenu appelé via do_action avant le contenu du shortcode
Exemple :
function testShortCode($atts) { $output = ''; $output .= 'Début ShortCode'; do_action('testaction'); $output .= 'Fin ShortCode'; return $output; } function displaytexte() { echo 'Text from action display text'; }
Avec cet exemple, vous aurez comme affichage
Pour éviter cet affichage, nous devons garder le contenu retournée depuis le do_action dans un tampon de sortie
function testShortCode($atts) { $output = ''; $output .= 'Début ShortCode'; ob_start(); do_action('testaction'); $output .= ob_get_contents(); ob_end_clean(); $output .= 'Fin ShortCode'; return $output; }
Maintenant vous aurez ce que vous voulez faire auparavant