Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Нюансы при формировании ЧПУ-ссылок


esculapra
 Поделиться

Рекомендованные сообщения

Эту тему я решил затронуть по той причине, что сам недавно столкнулся  с проблемой создания "сложных" ЧПУ ссылок. "Сложность" заключается в транслитерации небуквенных знаков. В принципе в старой версии транслитератора я этот вопрос решил, но напоролся на " - это никак не хотело изменяться, отчего ссылка вела "не туда"

Вот как выгладела транслитерация в старой версии:
гр Энциклопедия дошкольника /новая/: "Человек" /укр/ (20) С614006У "RANOK"
gr_enciklopedija_doshkolnika_novaja_:_"_chelovek"_ukr_20_s614006u_"_ranok"_

Тупо и убого! - соггласны?

Теперь все иначе:

gr-enciklopedija-doshkolnika-novaja-chelovek-ukr-20-s614006u-ranok

и ссылка, типа

домен/2-15903-gr-enciklopedija-doshkolnika-novaja-chelovek-ukr-20-s614006u-ranok


       $str=preg_replace('/[\s|,|;|+|\(|\)\/]/s',' ',$str);
       $result=array();
        preg_match_all('/[\d|\w]+/i', $str,$result);
        if(isset($result[0])&& is_array($result[0]))
         {
          foreach($result[0] as $pattern){
              $array[] = $pattern.'  ';
           }
         }
          $title=  implode('-',$array);
          $title=str_replace('-quot','',$title);
          $title=str_replace('quot-','',$title);
        $title=str_replace(' ','',$title);
        return trim($title);

Ссылка на комментарий
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
 Поделиться

×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.