Je crée un plugin qui charge un modèle spécifique en fonction de la requête transmise, créant ainsi une page pour le plugin sur le front-end, comme indiqué dans ce message:
Créez une page sans ajouter de page dans la base de données - la première réponse de Brian Fegter
Donc, si je me dirige sur mysite.com/foobar, je peux utiliser mon modèle personnalisé. Cependant, si j'attache une fonction à wp_head et affiche le fichier query_var paginé, il renvoie toujours 0, quelle que soit la valeur de l'URL (mysite.com/foobar/page/2 ou un exemple).
Des idées quant à pourquoi cela se produit? Y at-il un meilleur moyen pour mon plugin de créer une nouvelle page sur le front-end?
Merci d'avance.
Je l'ai résolu moi-même. Le problème étant:
add_rewrite_rule('^foobar?','index.php?is_foobar_page=1','top');
Ce qui empêche la création de tout autre query_vars. Pour résoudre ce problème, un combo de règles de réécriture légèrement plus compliqué est configuré:
add_rewrite_rule('^foobar?$','index.php?is_foobar_page=1','top');
add_rewrite_rule('foobar/page/([0-9]+)?$','index.php?is_foobar_page=1&paged=$matches[1]','top');
Cela prend en compte la création de la sous-page du plugin 'foobar' et permet également la pagination au sein de cette page.
J'espère que ça aide quelqu'un.