Перенаправление URL-адреса без конечного идентификатора записи с использованием .htaccess

#wordpress #.htaccess #url #redirect #http-status-code-301

#wordpress #.htaccess #url #перенаправление #http-status-code-301

Вопрос:

У меня есть сценарий, в котором мне нужно перенаправить все URL-адреса или wordpress без конечного идентификатора записи с использованием .htaccess

Пример:

https://example.com/chapter/subject-origin-chapter/1223 Для https://example.com/chapter/subject-origin-chapter

и

https://example.com/subject/subject-physics/38957 Для https://example.com/subject/subject-physics

Другие решения также приветствуются.

Текущий .htaccess — это:

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

Комментарии:

1. Пожалуйста, поделитесь своим файлом правил htaccess, который у вас есть прямо сейчас, с вами в вашем вопросе.

2. @RavinderSingh13 обычный wordpress .htaccess без каких-либо дополнений. Однако позвольте мне добавить это к моему вопросу.

3. Просто RewriteRule ^((chapter|subject)/.*)/[0-9] $1 [R=301,L] должно сработать. Конечно, оно должно быть размещено перед общими перезаписями WP.

Ответ №1:

Я нашел решение как:

 RewriteRule ^chapter/([a-zA-Z0-9-] )/(d )$ /chapter/$1 [L, R=301]
RewriteRule ^subject/([a-zA-Z0-9-] )/(d )$ /subject/$1 [L, R=301]