Je veux rediriger en masse les sous-répertoires/sous-pages/pages vers une seule page.
de
example.com/definicje
example.com/definicje/521/
example.com/definicje/592/a.html
etc.
sur une seule page
example.com/single-page/
Ma règle de réécriture ne redirige rien:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteRule ^definicje(.*)$ http://example.com/single-page/ [R=301,L]
</IfModule>
La solution consiste à mettre la réécriture juste après RewriteEngine On.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^definicje(.*)$ http://example.com/single-page/ [R=301,L]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
Il existe un plugin pour rediriger tous ces types de cas. C'est simplement appelé redirection. Rechercher dans le répertoire du plugin. Je l'utilise pour rediriger des répertoires ou certaines pages. https://wordpress.org/plugins/redirection/