J'ai
index.php
archive.php
...
Quand je vais à domain.com, il charge index.php, ce qui est attendu.
Mais, quand je vais www.domain.com/page/2/
, il charge les publications correctes (comme dans les publications de la deuxième page), mais utilise dans le modèle index.php . Je veux charger le archive.php template . Comment est-ce réalisable?
archive.php
n'est pas utilisé pour les pages suivantes de sous-ensembles de contenu non liés à la recherche, non taxonomiques, ....
Je pense que vous cherchez peut-être paged.php
(mais cela sera aussi utilisé pour la première page).
Vous pouvez également ajouter une logique à index.php
pour appeler un autre modèle dont le numéro de page est supérieur à un.
Correction à la relecture http://codex.wordpress.org/Template_Hierarchy#Visual_Overviewpages.php
n'est pas la solution. Les publications paginées (c.-à-d. Non uniques) utilisent home.php
sinon index.php
uniquement.
Vous devrez donc définir votre propre logique (probablement home.php
) pour utiliser index.php
ou un modèle personnalisé pour les publications.
(Cette réponse montre la logique WP permettant de choisir le modèle à utiliser.)
Voici comment procéder: ce n'est pas une fonctionnalité native de WP.
En gros, vérifiez si $ paged est défini, ce que vous pouvez faire en appelant is_paged () dans une condition.
<?php if ( ! is_paged() ) :
// code for home page
else:
// code for archive page
endif;
?>
Utiliser des modèles peut rendre ce fichier index.php toujours soigné/soigné.
Vous devrez cependant vous assurer que vous le faites bien:
<?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; ?>
Avant la requête home ou la requête d'archive.