Je ne sais pas comment y parvenir. J'essaie de mélanger des publications standard et des publications personnalisées sur la page d'accueil d'un site, mais je ne souhaite afficher les publications personnalisées que si une méta-valeur est définie. L'affichage des messages fonctionne bien, 'post_type' => array('game', 'post')
mais lorsque j'ajoute dans la méta_query les messages réguliers ne s'affichent plus (ce qui est logique car ils ne remplissent pas la condition meta_query).
Alors, comment puis-je limiter la meta_query au seul type de publication personnalisé afin que la publication régulière soit toujours incluse?
WP_Query
. Vous devrez soit utiliserpre_get_posts
modifier votre requête ou une instruction SQL personnalisée. Quoi qu'il en soit, veuillez montrer votre code actuel.Réponses:
Il y a différentes façons de faire l'affaire, 2 me vient à l'esprit:
$wpdb
requête personnalisée complèteWP_Query
avec des filtres, utiliserWP_Meta_Query
pour construire le sql supplémentaireJe posterai ici un exemple de code pour le cas # 2
Voir les commentaires en ligne pour plus d'explications.
Regardez également WP_Meta_Query sur Codex pour des documents complets sur la façon de définir vos arguments de méta-requête.
Éditer
J'ai refactorisé le code dans un plugin réutilisable, en utilisant une classe. Disponible en Gist .
la source