J'utilise des types de publication personnalisés, mais ils n'apparaissent pas dans les pages de balises ni dans les publications classiques. Je souhaite inclure des types de publication standard et personnalisés sur les pages de balises ou de catégories.
Mise à jour:
Pour ajouter, j'ai trouvé ce code ici , qui a parfaitement fonctionné pour la première partie:
add_filter('pre_get_posts', 'query_post_type');
function query_post_type($query) {
if ( is_category() || is_tag() && empty( $query->query_vars['suppress_filters'] ) ) {
$post_type = get_query_var('post_type');
if($post_type)
$post_type = $post_type;
else
$post_type = array('post','cpt'); // replace cpt to your custom post type
$query->set('post_type',$post_type);
return $query;
}
}
La deuxième question reste cependant:
Donc, l’un des éléments suivants fonctionnerait.
example.com/tag/blue?post_type=custom
example.com/tag/blue?post_type=post
function post_type_tags_fix($request) {
if ( isset($request['tag']) && !isset($request['post_type']) )
$request['post_type'] = 'any';
return $request;
}
add_filter('request', 'post_type_tags_fix');
Vous pouvez modifier le type de message à votre convenance. De ce post. Les archives de balises de type post personnalisées ne fonctionnent pas pour la boucle de base?
juste pour répondre à la deuxième partie, la syntaxe est la suivante:
example.com/tag/blue?post_type[]=custom
example.com/tag/blue?post_type[]=post
ou pour plusieurs types:
example.com/tag/blue?post_type[]=custom&post_type[]=post