Hey. Sto usando un tipo di messaggio personalizzato in wordpress. Mi iscrivo questo tipo personalizzato post come questo:Categorie di tipi di post personalizzati Wordpress
register_post_type("lifestream", array(
'label' => 'Lifestream',
'public' => true,
'hierarchical' => true,
'menu_position' => 5,
'supports' => array('title','editor','author','thumbnail','comments','custom-fields'),
'taxonomies' => array('category','post_tag'),
'query_var' => true,
'publicly_queryable' => true,
'exclude_from_search' => false,
'caller_get_posts' => 1
));
register_taxonomy_for_object_type('category', 'lifestream');
register_taxonomy_for_object_type('post_tag', 'lifestream');
Nel tema (il modello di anello) Mi piace combinare i messaggi e il mio tipo di inserimento personalizzato, per questo sto usando query_posts() con questi parametri:
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array(
'post_type' => array('post', 'lifestream'),
'paged' => $paged,
'cat' => $wp_query->get('cat'),
'tag' => $wp_query->get('tag'),
'year' => $wp_query->get('year'),
'monthnum' => $wp_query->get('monthnum'),
'post_status' => 'publish',
'showposts' => 3
);
query_posts($args);
# the loop
while (have_posts()) : the_post();
# markup
endwhile;
if($wp_query->max_num_pages > 1):
# next_posts_link/previous_posts_link
endif;
wp_reset_query();
Questo funziona finora. Ma ho avuto problemi con le pagine di categoria e tag. Se chiamo la prima pagina tutto va bene e posso impaginare le pagine ottenendo i risultati corretti.
E, se chiamo un URL paginato, ad es./category/mycat/page/2 a 404 viene lanciato. Ma sicuramente ci dovrebbero essere post. Non importa se ci sono post di tipo personalizzato o normali nella categoria. Suppongo che i miei parametri per query_posts() non siano corretti, ma non lo so ...
Sembra che $ wp_query-> max_num_pages abbia il valore sbagliato. Ma perché? Registro le tassonomie (mi piace usare categorie e tag per i miei tipi di post personalizzati) correttamente?
Avete qualche idea su cosa fare? Molte grazie!
Avevo solo il tempo di darti questa forma di codice dai miei appunti. Molto bene. pre_get_posts è difficile da combattere però! – BenRacicot
Questo lavoro per me ha lo stesso problema con CPT, grazie – MrRoman