Je souhaite modifier le nombre de publications par défaut pour mon site mobile. Voici la boucle de mon thème
<?php /* Start the Loop */ ?>
<?php while ( have_posts() ) : the_post(); ?>
<?php get_template_part( 'mobile-content' ); ?>
<?php endwhile; ?>
J'ai 25 messages affichés sur la version de bureau définie dans les paramètres wordpress, mais comment puis-je afficher 15 messages par page pour la version mobile?
Premièrement , vous devez détecter les appareils mobiles, probablement le plus simple et une possibilité intégrée est wp_is_mobile
. C’est plus simple que d’autres solutions disponibles, mais fonctionne assez bien. Il peut être modifié, si nécessaire, jetez un oeil à cette question pour un premier aperçu de cela.
Deuxièmement , si cela concerne votre requête principale, comme le suggère votre code, vous pouvez utiliser pre_get_posts
pour la modifier.
Ci-dessous un exemple de base sur la façon de les réunir:
Code:
add_action('pre_get_posts','wpse124949_alter_main_query_ppp_mobile');
function wpse124949_alter_main_query_ppp_mobile( $query ){
if ( is_admin() || ! $query->is_main_query() ) {
return;
}
if( $query->is_main_query() && wp_is_mobile() ) {
$query->set('posts_per_page', '15');
}
}
Vous pouvez utiliser cette fonction dans le fichier functions.php de votre thème enfant ou en tant que plug-in pour afficher 15 messages par page sur les appareils mobiles.
function custom_posts_per_page($query) {
if (wp_is_mobile()) {
$query->set('posts_per_page', 15);
} //endif
} //function
//this adds the function above to the 'pre_get_posts' action
add_action('pre_get_posts', 'custom_posts_per_page');