Я использую WordPress как CMS, где основная страница статична по большей части, а фактическая часть блога была перенесена на новую страницу с использованием настраиваемого шаблона страницы, который в основном действует так, как если бы это была первая страница на стандартном Установка WordPress. Он работает очень хорошо, но у него все еще есть несколько ошибок. Главное, что разбиение на страницы больше не будет работать, WordPress не распознает созданные URL-адреса страниц.
До сих пор я настроил WordPress для отображения правильных URL-адресов (domain.com/blog/page/2 вместо domain.com/page/2), и я также получил его для отображения определенной страницы сообщений в блоге через URL-адрес (domain.com/blog?page=N). Поэтому, в основном, я почти готов, мне просто нужно сопоставить domain.com/blog/page/N с доменом domain.com/blog?page=N. Это была бы простая задача, если бы это был просто старый статический сайт, но WordPress имеет собственную обработку URL-адресов, которая, я считаю, может мешать ей – не говоря уже о «блоге», это не фактический URL-адрес, поэтому ему нужно пройти правила дважды, один раз для отображения разбиения на страницы в блоге, и еще раз, чтобы WordPress мог обрабатывать сгенерированный URL-адрес, как это было бы регулярно … Я думаю, мне может понадобиться использовать флаги N или NS для правил перезаписи, но я просто не делаю знаю, как я буду их использовать
Правило, которое я придумал:
RewriteRule ^/blog/page/([0-9]+)$ /blog?page=$1
По умолчанию WordPress .htaccess:
RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L]
По некоторым предложениям, я получил это для .htaccess, но он все еще не распознает его.
<IfModule mod_rewrite.c> RewriteEngine On RewriteRule /blog/page/([0-9]+)$ /blog?page=$1 [N,QSA] RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule>
И я довольно уверен, что изменение страницы с помощью параметра URL-адреса действительно работает – я вручную меняю номер в URL-адресе и фактически меняю страницу. Веб-сервер LiteSpeed, если это имеет значение