web-dev-qa-db-fra.com

Fonction de retour Shortcode avec lien href à l'intérieur PHP

J'essaie d'écrire un shortcode dans function.php avec un lien pour partager la page actuelle sur Twitter. Cependant, ce lien contient des PHP dans le fichier href et je ne vois pas comment le faire fonctionner. Voici le code:

add_shortcode ( "indice", "indice_output" );
function indice_output( $atts, $content="null" ) {

    extract( shortcode_atts( array(
        '' => ''
    ), $atts ));

    return '<div class="boxed max-width"><div class="indice-title"><span>' . $content . '</span><i class="fa fa-Twitter" aria-hidden="true"></i></div></div>';

}

Merci d'avance pour l'aide.

1
Mathieu Préaud

Vous pouvez utiliser ob_start et ob_get_clean pour imprimer votre shortcode.

function shortcode_html($atts, $content="null")

     ob_start(); ?>

    <div class="boxed max-width">
        <div class="indice-title">
            <span><?php echo $content; ?></span>
            <i class="fa fa-Twitter" aria-hidden="true"></i>
        </div>
    </div> <?php

    return ob_get_clean();
}
add_shortcode( 'print_shortcode', 'shortcode_html' );
0
Nuno Sarmento