Errore paginazione in homepage.
Abbiamo riscontrato un problema di paginazione in homepage nella versione 3.0.5.4 (Small Business Edition) di classipress utilizzata sulla versione 3.4.1 di wordpress.
Problema riscontrato
In homepage provando ad accedere nelle pagine successive quindi, a partire dalla 2 in poi, riceviamo l’errore di pagina non trovata.
Risoluzione problema
Il problema, riconosciuto dagli sviluppatori del tema e risolto nella nuova versione, è che il core di worpdress è stato modificato e non viene passato il post_type corretto.
Girando in rete abbiamo trovato il seguente codice che risolve questo bug:
/**
* query coupons on homepage in main wp query, fixes pagination
* @since 1.3.1
*/
function clpr_query_coupons_on_homepage( $query ) {
if( $query->is_main_query() && $query->is_home() )
$query->set( 'post_type', APP_POST_TYPE );
}
if ( version_compare($wp_version, '3.4', '>=') )
add_action( 'pre_get_posts', 'clpr_query_coupons_on_homepage' );
Con il codice precedente noi purtroppo non abbiamo risolto perche la variabile APP_POST_TYPE non è settata ed abbiamo dovuto modificarla con il post_type corretta. Di seguito il codice utilizzato da noi che ha risolto il problema:
/**
* query coupons on homepage in main wp query, fixes pagination
* @since 1.3.1
*/
function clpr_query_coupons_on_homepage( $query ) {
if( $query->is_main_query() && $query->is_home() )
$query->set( 'post_type', 'ad_listing');
}
if ( version_compare($wp_version, '3.4', '>=') )
add_action( 'pre_get_posts', 'clpr_query_coupons_on_homepage' );
Link al forum ufficiale di classipress: risoluzione bug classipress paginazione