Убрать название компонента из URL 2.X

 
Посетитель
small user social cms
Медаль
Сообщений: 232
Всем привет!

Есть компонент в url открывается так site.ru/comp/action/1

Подскажите, как убрать "comp", чтобы открывался site.ru/action/1 ?
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 3507
Никак. Можно только для типов контента. Компоненты можно только переименовать.
Реклама
cms
Посетитель
small user social cms
МедальПочетный донор проектаАвторитет форумаКубок зрительских симпатийПочетный донор проекта
Сообщений: 2537
Loadырь:
Компоненты можно только переименовать
или вывести их на главной.
Тогда названия компонента в урл не будет.
Виджеты, поля и компоненты для instantcms 2 http://www.zau4man.ru/
InstantCMS Team
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 4336
Можно, но только пожертвовав типами контента. В конфигурационном файле:
Код PHP:
  1. 'ct_default' => 'content',
заменить на
Код PHP:
  1. 'ct_default' => 'comp',
Видео каталог для InstantCMS | Аудио каталог для InstantCMS | Мы Вконтакте | Предложение для спонсоров
Посетитель
small user social cms
Медаль
Сообщений: 232
Fuze:
Можно, но только пожертвовав типами контента. В конфигурационном файле:
А если во фронтенде компонента в функции
Код PHP:
  1. public function parseRoute($uri){
  2.  
  3. $action_name = parent::parseRoute($uri);
  4.  
  5. if (!$action_name && $this->cms_config->ctype_default){
  6. $action_name = parent::parseRoute($this->cms_config->ctype_default[0] . '/' . $uri);
  7. }
  8.  
  9. return $action_name;
  10.  
  11. }
Вместо $this->cms_config->ctype_default[0] добавить название компонента
InstantCMS Team
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 4336
Вадим Нарочный:
А если во фронтенде компонента в функции
До этого файла выполнение не дойдёт.
Видео каталог для InstantCMS | Аудио каталог для InstantCMS | Мы Вконтакте | Предложение для спонсоров
Посетитель
small user social cms
Сообщений: 76
Заходишь в \system\controllers\admin\forms и берешь form_settings.php после
Код PHP:
  1. $ctypes = cmsCore::getModel('content')->getContentTypes();
необходимо добавить
Код PHP:
  1. $controllers = cmsCore::getModel('admin')->getInstalledControllers();
далее в
Код PHP:
  1. new fieldList('ctype_default', array(
  2. 'title' => LANG_CP_SETTINGS_CTYPE_DEF,
  3. 'is_chosen_multiple' => true,
  4. 'hint' => LANG_CP_SETTINGS_CTYPE_DEF_HINT,
  5. 'generator' => function($item) use($ctypes){
добавляешь , $controllers и
Код PHP:
  1. if ($controllers) {
  2. foreach ($controllers as $controller) {
  3. $items[$controller['name']] = $controller['title'];
  4. }
  5. }
получается что-то типа такого
Код PHP:
  1. new fieldList('ctype_default', array(
  2. 'title' => LANG_CP_SETTINGS_CTYPE_DEF,
  3. 'is_chosen_multiple' => true,
  4. 'hint' => LANG_CP_SETTINGS_CTYPE_DEF_HINT,
  5. 'generator' => function($item) use($ctypes, $controllers){
  6. if ($ctypes) {
  7. foreach ($ctypes as $ctype) {
  8. $items[$ctype['name']] = $ctype['title'];
  9. }
  10. }
  11. if ($controllers) {
  12. foreach ($controllers as $controller) {
  13. $items[$controller['name']] = $controller['title'];
  14. }
  15. }
  16. return $items;
  17. }
  18. ))
И потом выбираешь в настройках. Так вроде все.
Разработка проектов любой сложности. Невозможное возможно!
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.