Comment raccorder get_terms () à ne compter que montrent des messages qui ont méta personnalisé
-
22-10-2019 - |
Question
Voici ce que j'ai:
Un type de message personnalisé qui a une valeur méta personnalisée ajoutée à un poste qui stocke les messages date d'expiration. Lorsque le poste passe cette date d'expiration ne plus SHOWS sur le site.
Cela fonctionne, mais j'utilise quelque chose comme ceci à la liste des termes pour le type de poste personnalisé:
$termcats = get_terms('dcategory', 'hide_empty=0&orderby=name&pad_counts=1');
Je montre le nombre de messages dans les termes indiqués, mais le problème est ici que le comte montre tout poste ou non si le poste a expiré. Ainsi, par exemple, j'ai un poste dans le terme appelé test
et ce poste est expiré. Les spectacles de code ci-dessus il y a un poste, mais lorsque l'utilisateur clique sur la catégorie ils obtiennent une liste vide.
Je dois donc un moyen de brancher en ignorer les messages get_terms () qui ont expiré selon mon champ de date dans les valeurs méta.
La solution
Pour autant que je me souviens compte pour les termes sont stockés dans la base de données, donc il n'y a rien à modifier lorsque vous les extrayez -. Vous obtenez simplement des numéros ready-made
Vous aurez soit besoin de mettre en œuvre et maintenir votre logique spéciale pour compte complètement séparément ou essayer de modifier et recalcule compte natifs, voir wp_update_term_count_now()
.