Lors d'un projet sous Wordpress, j'ai eu un problème de pagination des types de contenus (Custom Types) sur la page author.php
. La pagination binaire était bien calculée par Wordpress, mais les liens des pages suivantes me renvoyaient une 404, pour cette galerie paginée.
Après recherche, il s'avère que les Custom Types ne sont pas gérés en natif par Wordpress pour les templates de type "Archive", s'il est fait usage de "query_string".
Il faut donc ajouter un bout de code dans le fichier function.php de votre thème pour que les Custom Types soient pris en compte dans la pagination.
function add_pagination_to_author_page_query_string($query_string)
{
if (isset($query_string['author_name'])) $query_string['post_type'] = array(
'post',
'galerie'
);
return $query_string;
}
add_filter('request', 'add_pagination_to_author_page_query_string');
Il faut non seulement déclarer le Custom Type dans l'array (ici "galerie"); mais aussi les posts (articles) pour ne pas affecter la pagination de vos articles.
La requête ($query_string)
se fait ici avec 'author_name' car c'est avec cette variable que l'ensemble des données de l'auteur sont affichées sur la page author.php
. J'espère que cette astuce vous aidera autant qu'elle m'a rendu service.
Commentaires
Poster un commentaire