Как убрать ID из ссылок стандартным SEF? Нашёл два варианта в паблике, но оба варианта не подходят при следующем раскладе. У пункта меню Материалы > Материал, скажем под названием 1, в категории материалов 2 материала под названием 1 и 2, ставим ссылку в материале 1 на материал 2 сохраняем и тестим, получается ошибка 404. И ошибка выходит если алиас статьи к примеру video, а если алиас прописать с дефисом, к примеру video-1 либо vode-o (да без разницы) то всё работает. Как быть если я хочу без дефиса?
Версия джумлы? Ссылка на пациента? Какие именно шаги предпринял для SEF (.htaccess переименовал? настройку в адмике сделал? что и где в коде менял?)? Что вообще было сделано, что изменял? Опиши подробно, потому что информации мало - это "раз", а проблему как-то ты описал запутанно - это два. Распиши нормально (как в армии, четко и по существу), какие ссылки в меню, какие в категориях? З.Ы. Я так подозреваю что у тебя некоторые ссылки одинаковые, тогда будет 404 ошибка. Руками роутер в джумле сложновато настроить, чтобы ссылки были одинаковыми (к примеру Категория1/видео и Категория2/видео выдаст 404 страничку) без стороннего компонента.
id в ссылках специально ставится, чтоб у каждого материала был уникальный адрес и не было конфликта адресов. Если материалов немного, то можно в меню все эти материалы опубликовать, каждому присвоить алиас, без дефисов, но уникальный. Можно даже это сделать в отдельном меню, а в основном публиковать только категории, тогда тоже алиасы будут без id отображаться.
версия 3.4.3 менеджере категорий материалов создал категорию types добавил туда два материала с алиасом aodio и video в меню создал пункт меню с алиасом types и для этого пункта меню выбрал материал с алиасом aodio в материале aodio есть ссылка на материал video далее: перехожу по пути сайт.ru/administrator/components/com_content/ и редактирую файл config.xml после строки description="COM_CONTENT_CONFIG_ARTICLE_SETTINGS_DESC"> вставляю следующий код <field name="sef_advanced_link" type="radio" default="1" class="btn-group btn-group-yesno" label="Удалить ID" description="Оставить ID"> <option value="0">JNO</option> <option value="1">JYES</option> </field> захожу в менеджер материалов, нажимаю настройки смотрю что стоит Удалить ID ДА и сохраняю перехожу по пути сайт.ru/components/com_content/ и редактирую файл router.php нахожу в нём строчку if ($count == 1) и заменяю её на if ($count == 1 && !$advanced) у кого то надо заменить строку ->where($db->quoteName('alias'). ' = ' . $db->quote($db- >quote($segment))); на ->where($db->quoteName('alias') . ' = ' . $db->quote($segment)); но у меня такая же и стояла кто то ещё пишет что надо закомментировать следующий код if (strpos($segments[0], ':') === false) { $vars['view'] = 'article'; $vars['id'] = (int) $segments[0]; return $vars; } но никакого эффекта при этом у меня нет и не происходит и так переходим на сайт, заходив в меню types (ссылка такова сайт.ru/types) и видим там материал aodio с ссылкой на video, нажимаем на ссылку и ошибка 404, скачал версию 3.4.4 и установил на денвер, проделал всё тоже самое и перекидывает на главную (наверное настройки редиректа разные или что то ещё, не суть). далее меняю тип меню с Материалы > Материал на Материалы > Блог категорий, сохраняю перехожу точно так же и всё работает, получается следующая ссылка - сайт.ru/types/video (то что мне и нужно), но что мне не нужно что бы при переходе пункта меню не отображалось Блог категорий, а только один материал. ссылку на пациента без толку давать когда у вас доступа к файлам и к админ панели нет т.е. я же не дам, движок абсолютно нулячий скаченный с офф. сайта ваши мнения дамы и господа?