- Statut : non résolu
- Ce sujet contient 10 réponses, 4 participants et a été mis à jour pour la dernière fois par dex, le il y a 12 années et 6 mois.
-
AuteurMessages
-
22 mai 2012 à 9 h 27 min #509881
Bonjour,
Ma configuration WP actuelle
– Version de WordPress : WordPress 3.3.2
– Version de PHP/MySQL :
– Thème utilisé : Weaver 2.2.8
– Extensions en place : 13 dont PageNavi
– Nom de l’hebergeur :
– Adresse du site :Problème(s) rencontré(s) :
Bonjour, en utilisant un plugin, j’ai pu créé des Custom post types, et les rendre visible sur le site grâce à un ajout de code dans le fichier single.php et loop.php.
Le problème est que j’ai lié ces custom post types aux catégories du site et que, malgré le fait qu’ils soient bien dispatchés dans ces catégories, la pagination à l’intérieur de ces catégories ne fonctionne pas.
La pagination du plugin PageNavi s’affiche bien, mais lors de l’accès à la page 2 d’une catégorie, c’est une erreur 404 qui apparaît.
Les solutions que j’ai cherché sur le net ne fonctionnant pas, je viens donc poster ce problème sur ce forum.
Au besoin, mon loop.php:
<?php
/* Start the Loop.
*/
global $wp_query;
$args = array_merge( $wp_query->query, array( ‘post_type’ => array(‘travaux’),’posts_per_page’ => 5, ‘caller_get_posts’ => 1, ‘paged’ => $paged, ‘has_archive’ => true ) );
query_posts( $args );?>
<?php while ( have_posts() ) {
the_post();
global $weaver_cur_post_id;
$weaver_cur_post_id = get_the_ID();
weaver_per_post_style();
?>
<?php
if (!weaver_show_post_format($post->ID)) { // display normal if not post format
get_template_part(‘content’);
?>
<?php comments_template( '', true );
} // end else non-gallery posts
}
// End the loop?>Merci de votre aide !
22 mai 2012 à 9 h 42 min #834314Dans ce que tu indiques comme code, il y a une variable $paged, comment est elle définie ou renseignée auparavant?
J’ai modifié ton code pour le mettre entre les balises code (le gros C noir au dessus)
22 mai 2012 à 11 h 23 min #834315Je me suis renseigné avec le codex sur $paged, il faudrait donc la renseigner avec le code suivant ?
$paged = (get_query_var(‘paged’))
22 mai 2012 à 13 h 43 min #834316up
22 mai 2012 à 13 h 45 min #834317oui, avec
$paged = (get_query_var(‘paged’)) ? get_query_var(‘paged’) : 1;
22 mai 2012 à 15 h 22 min #834318C’est rajouté.
Le problème persiste, mais la structure des permaliens (j »utilise celle par défaut) joue-t-elle un rôle là-dedans?
23 mai 2012 à 13 h 05 min #834320✅
Enfin !!!
23 mai 2012 à 15 h 12 min #834319Comment est ce résolu?
13 juin 2012 à 16 h 14 min #834321Bonjour,
après plusieurs heures de recherches j’ai fini par trouver une solution à ce problème, si ça peut aider quelqu’un se retrouvant sur ce post par hasard :
Allez dans wp-includes/class-wp.php
cherchez la ligne (vers la 303 chez moi)
if ( isset($error) )
$this->query_vars[‘error’] = $error;En dessous placez :
if (@$this->query_vars[« name »] == « page »)
{
$tmp_ar = $this->query_vars;
$this->query_vars = array();
$this->query_vars[« paged »] = str_replace(« / », « », $tmp_ar[« page »]);
$this->query_vars[« category_name »] = $tmp_ar[« category_name »];
}Ca a marché chez moi.
13 juin 2012 à 17 h 46 min #834322Ce n’est pas une solution si wp-includes/class-wp.php est un des fichiers du coeur de WordPress.
Ne jamais modifier les fichiers de WordPress et ne jamais donner comme conseil de les modifier.
La pagination fonctionne avec les custom post type et donc avec page_navi également. Si il y avait un bug à ce niveau nous aurions été nombreux à nous en rendre compte.
Si cela ne marche pas chez toi le problème est ailleurs.
9 juillet 2012 à 16 h 15 min #834323Bonjour,
J’ai un peu le même problème sauf que cela touche le breadcrumb : il n’est pas alimenté par les custom post types… -
AuteurMessages
- Le forum ‘Utilisation spécifique de WordPress’ est fermé à de nouveaux sujets et réponses.