При вводе ЧПУ в поле URL если есть нижний дефис то выходит ошибка. Например xxxxx_xxxxxx А если так xxxxx-xxxxx то сохраняется нормально. Я сейчас перевожу на Инстант свой старый блог который работает с 2009 года и там многие ссылки именно с нижним дефисом. Можно ли как то решить эту проблему?
Можно ли как то решить эту проблему?
Можно. Нужен компонент, который сделает две вещи:
1. Заменит правило валидации url в форме, добавленное тут github.com/instantsoft/icms2/blob/a78f8241a97b5aee55f5808d8fb0be20c298eec7/system/controllers/content/frontend.php#L820
на что-то типа slug_extended
2. а также через хук тут github.com/instantsoft/icms2/blob/a78f8241a97b5aee55f5808d8fb0be20c298eec7/system/core/controller.php#L923 расширить поддержку роутов контроллера контент. Там сейчас нет github.com/instantsoft/icms2/blob/a78f8241a97b5aee55f5808d8fb0be20c298eec7/system/controllers/content/routes.php#L153 поддержки роута с _ поэтому возвращается 404
И добавить кастомный класс контроллера content по документации docs.instantcms.ru/dev/controllers/custom
чтобы объявить в нем этот самый validate_slug_extended
Должно взлететь.
Спасибо, но так как такого компонента в природе не существует то наверно проще в .htaccess прописать редирект 301 на 80-90 страниц, на которых пришлось править url.
то наверно проще в .htaccess прописать редирект 301 на 80-90 страниц
Тогда может проще перелинковать ваши ссылки? У WP наверника есть какой нибудь плагин на этот вариант.
Спасибо, но так как такого компонента в природе не существует то наверно проще в .htaccess прописать редирект 301 на 80-90 страниц, на которых пришлось править url.
Почему нет? Есть же прямо в стоке docs.instantcms.ru/manual/components/redirect
Я сделал проще, добавил в .htaccess вот такую строку
RewriteRule ^(.*)_(.*)$ /$1-$2 [R=301,L]
Но обнаружил что это каким то образом влияет на Wysiwyg редакторы Сначала я не смог вставить картинку в текст в произвольном месте через редактор. Нажимая Вставить/изменить изображение не появляется окно для вставки. Всё остальное работает (ссылка, центровка, подчёркивание, вставка видео, цвет текста и фона...) А когда решил посмотреть в компонентах в чём проблема обнаружил что вместо всех редакторов открывается страница 404. Кто может подсказать в чём дело? Или всё же пойти через компонент редиректа? Не использовать .htaccess ?
Если второй вариант, кто сможет помочь вписать нужное в компонент? Оплачу (в разумных пределах)
Кто может подсказать в чём дело
есть же экшны и контроллеры с подчеркиванием внизу. У вас скорее всего проблемы с биллингом

и много еще чем.
Вставить/изменить изображение не появляется окно для вставки
потому что там тоже название экшна через подчеркивание

И вы на них все своей регуляркой повлияли. Попробуйте сузить действие регулярки, добавив в него привязку к имени типа контента.
Спасибо за подсказку. Попробую.