web-dev-qa-db-fra.com

une règle de réécriture unique

J'ai une page pour laquelle je dois changer l'URL.

Actuellement, la page se trouve sur exemple.com/departments/human-resources/

(ressources humaines est une sous-page de/départements /)

Mon client souhaite conserver l'URL existante pour le service des ressources humaines, à savoir:

http://example.com/hr/

Comment puis-je réécrire toute demande de ^/hr/?$ en ^/departments/human-resources/$ tout en conservant l'URL identique?

C'est-à-dire que personne ne verra jamais/départements/ressources humaines /.

Mon .htaccess actuel ressemble à ceci:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

J'ai essayé d'ajouter une règle de réécriture qui écrit/hr/dans/dept/h-r/avant la ligne index.php, mais cela me donne un 404.

1
jessh

La redirection vous permet de modifier les slug de publication et d'en conserver l'historique, en pointant toutes les demandes d'historique d'une page vers la même destination. C'est utile pour toutes sortes d'autres choses aussi, mais cela résoudra définitivement ce problème.

1
developdaly

Des règles de réécriture uniques sont en fait intégrées dans l'interface de type de publication/nouvelle interface utilisateur.

Vous pouvez soit utiliser la ligne de modification Permalink située sous le titre, soit ouvrir la liste des options et définissez la boîte à méta sur visible (cochez la case).

enter image description here

0
kaiser