Переписать роутер в УК

InstantCMS 1.X
#1 11 сентября 2019 в 08:42
Здравствуй, честной народ.
Кто подскажет, куда копать?
Достался сайт с заполненным УК, хотим сделать ему человекопонятные URLы.
Например, /catalog/1005 изменить на /catalog/instrumenty, а /catalog/item445.html — на /catalog/instrumenty/drel-makita.html
Что уже сделал — добавил в cms_uc_cats и cms_uc_items поле seourl, которое заполнил, переписав транслитом содержимое из поля title.
Кудой ковырять дальше? Понимаю, что нужно переписывать router.php, но как?
Спасибо!
#2 11 сентября 2019 в 08:58
или может кто за деньгу возьмётся?
#3 11 сентября 2019 в 09:24
Править нужно еще фронтенд, шаблоны
#4 11 сентября 2019 в 10:37

Править нужно еще фронтенд, шаблоны

IngDesign (Магомед)
ну здесь более-менее всё понятно
я не могу разобрать регулярки в роутере… где и что менять? тёмный лес для меня
#5 11 сентября 2019 в 13:19
Основное думаю так
для страницы просмотра элемента каталога

router.php
вместо

  1. $routes[] = array(
  2. '_uri' => '/^catalog\/item([0-9]+).html$/i',
  3. 'do' => 'item',
  4. 1 => 'id'
  5. );
так

  1. $routes[] = array(
  2. '_uri' => '/^catalog\/([a-zA-Z0-9\-]+).html$/i',
  3. 'do' => 'item',
  4. 1 => 'seo_url'
  5. );
fronted.php поменять

  1. $id = $inCore->request('id', 'int');
  2. $sql = "SELECT * FROM cms_uc_items WHERE id = '$id'";
на

  1. $seo_url = $inCore->request('seo_url', 'str);
  2. $sql = "SELECT * FROM cms_uc_items WHERE seourl = '$seo_url'";
  3.  
ну и как сказано выше, там еще смотреть по файлам, что поправить можно или нужно
#6 11 сентября 2019 в 15:17
Нил™, спасибо, попробую
#7 11 сентября 2019 в 18:13
Отпишитесь по результату, думаю такую реализацию надо будет включить в сборку
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.

Похожие темы

Вирус в роутере?

Вопросы безопасности Создана 4 года назад 18 сообщений

Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.