Я разрабатываю коммерческий сайт, где пользователи могут публиковать элементы в любых категориях (категории могут быть от 2 до 4 уровней).
Я хочу создать URL для страниц со списком и подробной информацией:
- На странице со списком будет отображаться список элементов во внутренней категории
- Страница сведений будет отображать всю информацию для элемента во внутренней категории (Внутренняя категория означает последнюю категорию в иерархической структуре, т. Е. В
/classified/autos4x4s/mitsubishi/lancer/
внутреннее среднее "lancer")
Вот ссылки, которые я хочу сгенерировать
/classified/autos4x4s/mitsubishi/lancer/
(для листинга)
/classified/autos4x4s/mitsubishi/lancer/2011/3/12/lancer-2002-in-good-condition-14/
(для деталей)
Я хочу перенаправить на ads.php, если в URL существует только 4 категории, и на detail.php, если передано 6 элементов (4 имени категории + 2 даты иtitle).
Я пишу эти правила:
#listing ads
RewriteRule ^(.*)/(.*)/(.*)/(.*)/?$ ads.php?c1=$1&c2=$2&c3=$3&c4=$4 [NC,L]
#Detail pages
RewriteRule ^(.*)/(.*)/(.*)/(.*)/(.*)/(.*)/?$ detail.php?c1=$1&c2=$2&c3=$3&c4=$4&dt=$5&at=$6 [NC,L]
Но все страницы сайтов перенаправляются на ads.php (страницу со списком), даже домашнюю страницу.
Я изменяюправила следующим образом: (Хотя я не хочу использовать Listing и Detail в начале URL. Почему, как я вижу на некоторых сайтахкак я хочу: /classified/autos4x4s/mitsubishi/lancer/2011/3/12/lancer-2002-in-good-condition-14/
)
#Listing pages
RewriteRule ^Listing/(.*)/(.*)/(.*)/(.*)/?$ ads.php?c1=$1&c2=$2&c3=$3&c4=$4 [NC,L]
#Detail pages
RewriteRule ^Detail/(.*)/(.*)/(.*)/(.*)/(.*)/(.*)/?$ detail.php?c1=$1&c2=$2&c3=$3&c4=$4&dt=$5&at=$6 [NC,L]
Теперь все остальные страницы в порядке, но когда я пропускаю /classified/autos4x4s/mitsubishi/lancer/2011/3/12/lancer-2002-in-good-condition-14/
, он всегда идет на страницу со списком (ads.php), а не на страницу с подробностями.
Любая помощь будет оценена.