J'ai changé la structure de permalien de /%category%/%postname%/
à /%year%/%monthnum%/%postname%//
Comment puis-je rediriger tous les anciens messages vers les nouveaux (par exemple: via htaccess)?
WordPress devrait gérer les redirections 301 pour vous automatiquement dans ce cas. Ce n'est pas toujours le cas, mais cela devrait être ici.
En bref, WordPress a une fonction, redirect_guess_404_permalink
, qui essaie de trouver le bon message quand il rencontre un 404 en utilisant la fin de l’URL 404 pour interroger le wp_posts.post_name
. S'il trouve une publication, il effectuera une redirection 301. Dans votre cas particulier, étant donné que votre ancienne structure se termine par %postname%
, ceci devrait très 301 de manière très fiable sur tous vos anciens chemins.
Vous pouvez également rediriger via WP. Oui, la variante htaccess offre de meilleures performances, mais un petit plugin est facile à utiliser.
Utilisez le crochet template_redirect
et vérifiez la fonction conditionnelle is_404()
; si vrai, que d'obtenir le bon permalien et réécrire. Aussi, vous pouvez utiliser le petit plugin Change Permalink Helper .