У меня есть category.php, и у него есть ?slug='something'
, так что это выглядит после того, как я сделал некоторый код в .htaccess: www.example.com/category/football
. И это работает хорошо, НО мне нужно реализовать нумерацию страниц, поэтому моя ссылка будет примерно такой: www.example.com/category/football/page/2
. Я сделал это также с некоторым кодом в .htaccess, НО это не работает.
Я написал этот код в category.php, чтобы указать некоторые вещи:
echo "$_GET['slug']"
if(isset($_GET['page']))
echo $_GET['page']
Когда я перехожу на www.example.com/category/football
все в порядке, я получаю сообщение " fudbal " от echo $_GET['slug']
НО, когда я перехожу на сайт www.example.com/category/football/page/2
это НЕ нормально, я получаю " fudbal/page/2 " (я полагаю, что это отголоски, как и все slug) из echo $_GET['slug']
и $_GET['page']
ничего не дает.
Вот мой .htaccess:
Options -Indexes
RewriteEngine on
RewriteRule ^category/([a-zA-Z0-9-/]+)$ themes/tema_2/category.php?slug=$1 [NC,L,QSA]
RewriteRule ^category/([^/]+)/page/(\d+)/?$ themes/tema_2/category.php?slug=$1&page=$2 [NC,L,QSA]
Попробуйте здесь: http://htaccess.madewithlove.be/ Я получил ошибку:
Это правило было выполнено, новый URL-адрес: http://www.example.com/themes/tema_2/category.php?slug=fudbal/page/2 Тестирование остановлено, поскольку L в параметрах RewriteRule
Это должно сработать для вас:
Options -Indexes
RewriteEngine on
RewriteRule ^category/([^/]+)/?$ themes/tema_2/category.php?slug=$1 [NC,L,QSA]
RewriteRule ^category/([^/]+)/page/(\d+)/?$ themes/tema_2/category.php?slug=$1&page=$2 [NC,L,QSA]