Помогите настроить ЧПУ. Версия slaed старая, но не в этом суть.
Хочу переделать ссылки на профили пользователей
с
index.php?name=Account&op=info&uname=Nikolya
в
user-Nikolya.html
В файле .htaccess прописал
RewriteRule ^user-(.*).html$ index.php?name=Account&op=info&uname=$1 [NC]
страница появилась user-Nikolya.html.
В файле config_rewrite.php прописал:
"user-\\\\1.html",
"'(?<!/)index.php?name=Account&op=info&uname=([%&;/:|\s\-\'{}().&_a-zA-Zа-яА-Я0-9+=-]*)'",
но преобразование ссылок не происходит. Что не так, я не знаток программирования, подскажите как правильно сделать?
На всякий случай сайт nikolya.dp.ua
Помогите с настройками ЧПУ
Попробуйте такой вариант:
Если не поможет, ищите ошибку синтаксиса Вашего кода в файле: config_rewrite.php
О сколько нам открытий чудных,
Готовит просвещенья дух,
И опыт, сын ошибок трудных,
И гений, парадоксов друг...
Попробуйте такой вариант:
"user-\\3.html",
"'(?<!/)index.php\?name=Account&(amp;)?op=info&(amp;)?uname=([%&;/:|\s\-\'{}().&_a-zA-Zа-яА-Я0-9+=-]*)'",
Если не поможет, ищите ошибку синтаксиса Вашего кода в файле: config_rewrite.php
А что такое (amp;)? в коде ?
Вроде заработало, спасибо ))
А что такое (amp;)? в коде ?
На случай использования символов ASCII в коде: &
По сути: & = &
О сколько нам открытий чудных,
Готовит просвещенья дух,
И опыт, сын ошибок трудных,
И гений, парадоксов друг...
Прошу помочь с ЧПУ в модуле "news" - система не хочет переименовывать адресную строку в модуле, хотя в выпадающем списке основного меню на главной странице сайта все прекрасно работает - что я не дописал для корректной работы ЧПУ, подскажите, пожалуйста:
Вот пример того, как ЧПУ работает в меню:
Вот пример того, как ЧПУ отказывается видеть условия ЧПУ в модуле news
Файл: .htaccess
RewriteRule ^sewing-machines-juki$
?name=news&op=view&id=1 [NC,L]
RewriteRule ^([a-zA-Z0-9_]+)household-overlocks-juki$
name=news&op=view&id=2 [NC,L]
Файл: config_rewrite.php
$out[] = "sewing-machines-juki";
$in[] = "'(?<!/)index.php\?name=news&op=view&id=1'";
$out[] = "household-overlocks-juki";
$in[] = "'(?<!/)index.php\?name=news&op=view&id=2'";
- Не исключено что дело в использовании: & = &, следует применять & вместо &.
- В файле: config_rewrite.php попробуйте прокомментировать все правила кроме ваших, возможно есть влияние.
О сколько нам открытий чудных,
Готовит просвещенья дух,
И опыт, сын ошибок трудных,
И гений, парадоксов друг...
Здравствуйте, большое спасибо, да действительно помогло & = &,, но после этого картина изменилась в другую сторону - в меню перестало работать правило, зато в модуле заработало, как надо!
В общем ничего другого не придумал и задублировал правило в файле config_rewrite и всю заработало прекрасно - очень радует Ваш оперативный ответ по мере Ваших возможностей. Приятно иметь дело с профи!
$out[] = "sewing-machines-juki";
$in[] = "'(?<!/)index.php\?name=news&op=view&id=1'";
$out[] = "household-overlocks-juki";
$in[] = "'(?<!/)index.php\?name=news&op=view&id=2'";
$out[] = "sewing-machines-juki";
$in[] = "'(?<!/)index.php\?name=news&op=view&id=1'";
$out[] = "household-overlocks-juki";
$in[] = "'(?<!/)index.php\?name=news&op=view&id=2'";
Рад что разобрались!
Совет, посмотрите как написаны стандартные правила системы, там реализовано с учётом использования как & так и & одновременно.
О сколько нам открытий чудных,
Готовит просвещенья дух,
И опыт, сын ошибок трудных,
И гений, парадоксов друг...