Je souhaite afficher le titre actuel de la catégorie de produits de taxonomie dans la page de produit unique.
Le code ci-dessous fonctionne, mais renvoie toutes les catégories de produits. J'ai besoin d'aide pour sélectionner la catégorie actuelle.
<?php
global $post;
$args = array( 'taxonomy' => 'product_cat',);
$terms = wp_get_post_terms($post->ID,'product_cat', $args);
$count = count($terms);
if ($count > 0) {
foreach ($terms as $term) {
echo '<div style="direction:rtl;">';
echo 'Category: ' . $term->name;
echo '</div>';
}
}
?>
Après quelques heures d’expérimentation et de recherche, vous êtes mon dernier espoir de solution. Merci.
Vous pouvez utiliser get_the_term_list
echo get_the_term_list( $post->ID, 'product_cat', '<div style="direction:rtl;">', '</div>', '' );
Le système d'affichage d'un titre de catégorie sur une seule page de produit échoue si vous commencez à ajouter l'élément à plusieurs catégories.
Je suis devenu fou une fois dans un projet où un client ajoutait des éléments de portefeuille à deux catégories et souhaitait pourtant que je montre le titre de la "bonne" catégorie en fonction. Ce projet m'a amené à créer le plugin Radio Buttons for Taxonomies pour limiter les utilisateurs à un seul terme dans certaines taxonomies.
Dans la plupart des thèmes, je sais que c'est standard, mais le vôtre peut différer. Le code ci-dessous provient du fichier meta.php
, qui est chargé d’afficher les métadonnées - catégories, balises - dans woocommerce.
Code:
<?php
$size = sizeof( get_the_terms( $post->ID, 'product_cat' ) );
echo $product->get_categories( ', ', '<span class="posted_in">' . _n( 'Category:', 'Categories:', $size, 'woocommerce' ) . ' ', '.</span>' );
?>
Modifier:
J'ai donné une réponse détaillée à ce problème il y a quelque temps: