Я пытаюсь создать SEO-ориентированные URL для моего блога WordPress, но при этом могу изменить заголовок сообщения по своему усмотрению.
Моя структура постоянных ссылок будет выглядеть так:
% post_id% /% postname%
Однако я бы хотел, чтобы WordPress просто учитывал% post_id% из URL при поиске подходящей записи (вроде как здесь, в stackoverflow)
Например:
https://stackoverflow.com/users/810/crossbrowser совпадает с https://stackoverflow.com/users/810/hello-world
Я бы хотел, чтобы все они указывали на один и тот же пост с идентификатором 345:
http://myblog.com/345/the-name-of-the-post
http://myblog.com/345/any-text
http://myblog.com/345
В документации упоминается нечто, похожее на то, что я пытаюсь сделать: Длинные постоянные ссылки , но я не смог заставить его работать.
Вот мой файл .htaccess:
RewriteEngine on
RewriteBase /
# Let wordpress use pretty permalinks
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# From the example in the documentation
#RewriteRule /post/([0-9]+)?/?([0-9]+)?/?$ /index.php?p=$1&page=$2 [QSA]
UPDATE
Я продолжаю пробовать этот RewriteRule в этом онлайн-инструменте тестирования регулярных выражений , но он не работает, когда я помещаю его в свой .htaccess (сразу после RewriteBase):
RewriteRule ^([0-9]+)/?([a-zA-Z0-9\-]+)/?$ index.php?p=$1 [QSA]