J'aimerais que les commentateurs se rendent à la page 2 d'un message paginé. Mes articles sont séparés par la balise <!--more-->
donc j'ai les www.site.com/post-title
et www.site.com/post-title/2/
. Je souhaite que les utilisateurs visitent la deuxième partie du message après avoir commenté.
J'ai trouvé d'autres questions expliquant comment déplacer l'utilisateur vers le commentaire paginé, c'est-à-dire www.site.com/post-title/comment-page-x/#comment-x
, mais pas vers les autres pages d'un message paginé.
Modifier: Mon site utilise le paramètre commun pour le permalien, à savoir wpinstallation/%postname%/
. Lorsque paginé, il devient /%postname%/2/
pour la page 2.
Merci.
Après avoir lu un peu sur regex et preg, en partant d'un exemple précédent d'un problème similaire et de le tester , j'ai pu répondre à ma propre question.
J'ai ajouté cette fonction à functions.php:
<?php
/** Plugin Name: WPSE (#167237) Redirect after comment */
add_filter('comment_post_redirect', 'redirect_after_comment');
function redirect_after_comment($location)
{
return preg_replace("/comment-page-([\d]+)\/#comment-([\d]+)/", "2", $location);
}
Il remplace la partie de l'URL indiquant la page de commentaire et l'ancre de commentaire avec "2". Ce n'est peut-être pas la solution la plus propre, mais c'est ce que j'ai réussi à faire en tant que débutant.