ЧПУ. Задачка

Тема в разделе "Mod Rewrite / htaccess / ЧПУ", создана пользователем lordBlack, 21 май 2010.

Статус темы:
Закрыта.
  1. lordBlack

    lordBlack

    Регистр.:
    29 ноя 2007
    Сообщения:
    620
    Симпатии:
    246
    есть работающий чпу вида:
    site.ru/ru/cat/5375
    под id 5375 - идет товар с название балко своловая
    насколько реально переделать чпу чтобы было:
    site.ru/ru/cat/balko_svolovaya
    вообщем где копать и куда смотреть, и что брать за образец?
     
  2. CNiks0N

    CNiks0N lamp.root

    Регистр.:
    28 ноя 2008
    Сообщения:
    230
    Симпатии:
    48
    Покажи сначала .htaccess файл чтобы знать хотябы примерную структуру
     
  3. diavolic

    diavolic

    Регистр.:
    17 мар 2010
    Сообщения:
    522
    Симпатии:
    102

    введи в таблицу с товаром еще одно поле, куда будет записываться его название транслитом (уникальное) при добавлении товара в базу. чпу переделывать не надо, надо будет слегка подправить скрипт выборки товаров. Т.е. приблизительно - вместо
    Код:
    select * from table where id='$id_tovar'
    у тебя будет
    Код:
    select * from table where translate_name='$name'
     
  4. CNiks0N

    CNiks0N lamp.root

    Регистр.:
    28 ноя 2008
    Сообщения:
    230
    Симпатии:
    48
    Только если в .htaccess не указано ([\d]+), если указано то надо заменить на ([\S]+)
     
  5. diavolic

    diavolic

    Регистр.:
    17 мар 2010
    Сообщения:
    522
    Симпатии:
    102

    вполне логично. я обычно делаю регэкспы более универсальными, поэтому и не подумал что в этом случае может быть что то подобное.
     
  6. CNiks0N

    CNiks0N lamp.root

    Регистр.:
    28 ноя 2008
    Сообщения:
    230
    Симпатии:
    48
    Ну никто же незнает какой там движок.
    Я собственно говоря и попросил сразу htaccess чтобы понять что за оно
     
  7. cooldan

    cooldan Создатель

    Регистр.:
    2 июн 2009
    Сообщения:
    11
    Симпатии:
    0
    не советовал бы я так поступать. лучше сделать вид
    site.ru/ru/cat/5375-balko_svolovaya
    и работать так-же с id. удобнее и вам, и поисковикам.
     
  8. CNiks0N

    CNiks0N lamp.root

    Регистр.:
    28 ноя 2008
    Сообщения:
    230
    Симпатии:
    48
    Аля DLE ? ))
     
  9. cooldan

    cooldan Создатель

    Регистр.:
    2 июн 2009
    Сообщения:
    11
    Симпатии:
    0
    DLE делали не дураки. Дело в том, что легче так защищаться от sql инъекций, легче работать с данными (LIKE запросы не малого стоят. А в остальных... ну вобщем так выгодней как не крути. если только тут не для сео нужно, а для так скажем выкрутаса. Тут можно написать транслита функцию и детранслита не внося особых измерний. можно создать столбец и заносить транслированный заголовок, дабы не гонять туда-сюда функциями.
     
  10. CNiks0N

    CNiks0N lamp.root

    Регистр.:
    28 ноя 2008
    Сообщения:
    230
    Симпатии:
    48
    А зачем LIKE запросы на версию site.ru/ru/cat/balko_svolovaya ??
    Тут надо обычный запрос alias = 'balko_svolovaya'.
    Так что можно делать balko_svolovaya как хочет ТС
     
Статус темы:
Закрыта.