Dans mon thème a une balises shortcode pour afficher les balises de poste et fonction pour charger le contenu du contenu. Mais dans la fonction n'inclut pas la balise shortcode. Maintenant, je veux l'ajouter pour fonctionner mais je ne sais pas comment le faire. J'espère que tout le monde m'aide. Merci d'avance.
balise Shortcode
function wwl_post_tags( $atts ) {
if( $tags = get_the_tag_list( '', ', ' ) ) {
$defaults = array(
'before' => __( 'Từ khóa: ', 'icy' ),
'after' => '. ',
);
$atts = shortcode_atts( $defaults, $atts );
return sprintf( '%1$s<span class="entry-tags">%2$s</span>%3$s',
$atts['before'],
$tags,
$atts['after']
);
}
}
add_shortcode( 'post_tags', 'wwl_post_tags' );
Fonction permettant de charger le contenu du message
function wwl_post_content() {
global $more;
if ( ! is_single() ) {
$more = 0;
}
do_action( 'wwl_before_post_content' ); // Hook
if ( ! is_single() && of_get_option('post_content') == 2 || is_search() ) :
?>
<div class="entry-summary">
<?php wwl_thumbnail(); ?>
<?php the_excerpt(); ?>
<div class="clearfix"></div>
</div><!-- .entry-summary -->
<?php else : ?>
<div class="entry-content">
<?php wwl_thumbnail(); ?>
<?php the_content( '', false, '' ); ?>
<?php wp_link_pages( array( 'before' => '<div class="page-links">' . __( 'Pages:', 'icy' ), 'after' => '</div>' ) ); ?>
<div class="clearfix"></div>
</div><!-- .entry-content -->
<?php endif;
}
Une autre option consiste à utiliser la fonction do_shortcode () . Cela obligera WordPress à exécuter le shortcode comme s'il se trouvait dans l'éditeur de contenu.
Donc, là où vous voulez que vos balises postales apparaissent, mettez-les simplement.
<?php echo do_shortcode('[post_tags]'); ?>
je veux ajouter une balise shortcode en post unique pour afficher les balises
Collez [post_tags]
dans votre corps de publication via l'éditeur de publications sur le backend .
Voir: http://codex.wordpress.org/Shortcode_API
Si vous voulez le faire automatiquement, vous pouvez mettre un filtre sur the_content
(non testé):
add_filter(
'the_content',
function($content) {
if (is_single())
$content .= '[post_tags]';
}
return $content;
}
);