Stai cercando un modo per abilitare wp_get_archives per visualizzare i tuoi tipi di post personalizzati? Sebbene probabilmente esista un plugin per questo, abbiamo creato un rapido snippet di codice che puoi utilizzare per aggiungere tipi di post personalizzati a wp_get_archives() in WordPress.
Istruzioni:
Tutto quello che devi fare è aggiungere questo codice al file functions.php del tuo tema o in un plugin specifico per il sito:
add_filter( 'getarchives_where' , 'ucc_getarchives_where_filter' , 10 , 2 );
function ucc_getarchives_where_filter( $where , $r ) {
$args = array( 'public' => true , '_builtin' => false );
$output = 'names'; $operator = 'and';
$post_types = get_post_types( $args , $output , $operator );
$post_types = array_merge( $post_types , array( 'post','CUSTOM_POST_TYPE_NAME' ) );
$post_types = "'" . implode( "' , '" , $post_types ) . "'";
return str_replace( "post_type = 'post'" , "post_type IN ( $post_types )" , $where );
}
Nota: Se questa è la prima volta che aggiungi snippet di codice in WordPress, consulta la nostra guida su come copiare / incollare correttamente snippet di codice in WordPress, in modo da non rompere accidentalmente il tuo sito.
Se ti è piaciuto questo snippet di codice, prendi in considerazione la lettura dei nostri altri articoli sul sito come: 27 migliori temi WordPress per aziende per il tuo sito web e 15 migliori strumenti e plugin di content marketing per WordPress.
404
Grazie per questo.. tuttavia sto avendo un po' di difficoltà con il link effettivo, se ora clicco ad esempio su "Febbraio", mi porta agli archivi non di tipo post personalizzato di febbraio. Invece dei post CPT per Feb. cioè il link è solo /2012/02/
sì, l'elenco archivio rimanda all'archivio annuale del tipo di post "post" invece che all'archivio annuale cpt