Question

Cette fonctionnalité est-intégré dans wordpress? i na pas voir quoi que ce soit dans le codex.

codex.wordpress.org/Function_Reference/wp_tag_cloud

J'ai quelques pages qui sont catégorie spécifique et je voudrais montrer toutes les balises associées à ces messages.

J'ai trouvé, mais je ne suis pas sûr si son bon ou s'il existe un meilleur moyen ( la source ) ( vieux !!!! ):

<?php
    query_posts('category_name=html');
    if (have_posts()) : while (have_posts()) : the_post();
        $posttags = get_the_tags();
        if ($posttags) {
            foreach($posttags as $tag) {
                $all_tags_arr[] = $tag -> name;
            }
        }
    endwhile; endif; 

    $tags_arr = array_unique($all_tags_arr);
?>
    <ul>
<?php
    foreach($tags_arr as $tag){
        echo '<li>'.$tag.'</li>';
    }
?>
</ul>
<?php wp_reset_query(); ?>

Mise à jour (simplifié) :::

pour faire une liste des balises d'une catégorie spécifique de ce code est beaucoup mieux (il suffit de changer le nom de la catégorie):

:: récemment mis à jour à nouveau à cause d'une erreur de boucle ::

    <ul>
                <?php
                    query_posts('category_name=html');
                    if (have_posts()) : while (have_posts()) : the_post();

                        if( get_the_tag_list() ){
                            echo $posttags = get_the_tag_list('<li>','</li><li>','</li>');
                        }

                    endwhile; endif; 

                    wp_reset_query(); 
                ?>
</ul>

Même difficile, je peux avoir une solution, s'il vous plaît mettre à jour ce si un nouveau vient autour.

Était-ce utile?

La solution

Je pense que la méthode que vous l'avez trouvé est la seule façon que vous pouvez réaliser ce que vous cherchez. Peut-être que vous pouvez modifier quelques lignes, mais le concept est juste.

au moment je ne pense pas qu'il y ait un moyen de balises de filtre que vous le feriez avec une fonction de base wordpress.

Autres conseils

je n'ai pas le code ci-dessus pour travailler mon installation de WordPress. Je ne parviens cependant à modifier jusqu'à ce qu'il a travaillé. Voici mon tweak:

$catid = get_cat_ID(single_cat_title("",false));
$catobj = get_category($catid);
$catslug = $catobj->slug;
$all_tags_arr = array();
query_posts('category_name='.$catslug);
if (have_posts()) : while (have_posts()) : the_post();
    $posttags = get_the_tags();
    if ($posttags) {
        foreach($posttags as $tag) {
            $all_tags_arr[] = $tag -> term_id;
        }
    }
endwhile; endif; 

$tags_arr = array_unique($all_tags_arr);

$tagcloud_args = array(
    'include'   =>  implode(',',$tags_arr),
);

wp_tag_cloud( $tagcloud_args ); 
wp_reset_query();

Voici un exemple beaucoup plus facile .... Il suffit de changer le nom de la catégorie et votre hey presto fait. Les étiquettes associées seront imprimées dans un format de liste.

<?php query_posts('category_name=html'); if (have_posts()) : while (have_posts()) : the_post();

    $posttags = get_the_tags();

    if ($posttags) {
        foreach($posttags as $tag) {
            $all_tags[] = $tag -> name;
        }
    }
    endwhile; endif; 

    //This snippet removes any duplicates.
    $tags_unique = array_unique($all_tags); 

    echo '<ul>';
        foreach($tags_unique as $unique) {
          echo  '<li>'.$unique.'</li>';
        }
    echo '</ul>';

    wp_reset_query();

?>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top