1

Тема: Убрать приставку text- у категории постов

Подскажите как убрать приставку text- у категории постов?

Повысить оценку Понизить оценку

2

Re: Убрать приставку text- у категории постов

Если вы уберете уникальный префикс маршрута, как система поймет, что это категория постов?
А если вы сделаете категорию постов с alias'ом /admin/ или /catalog/ или ...., как решать конфликт?

Повысить оценку Понизить оценку

3

Re: Убрать приставку text- у категории постов

admin пишет:

Если вы уберете уникальный префикс маршрута, как система поймет, что это категория постов?
А если вы сделаете категорию постов с alias'ом /admin/ или /catalog/ или ...., как решать конфликт?

Спасибо за беспокойство, понятно что никто не будет такие алиас делать, сейчас то тоже можно станичнику в меню создать с любым алиасом)

Но всё же задача стоит убрать text- перед алиас категории постов)

Повысить оценку Понизить оценку

4

Re: Убрать приставку text- у категории постов

Илья пишет:
admin пишет:

Если вы уберете уникальный префикс маршрута, как система поймет, что это категория постов?
А если вы сделаете категорию постов с alias'ом /admin/ или /catalog/ или ...., как решать конфликт?

Спасибо за беспокойство, понятно что никто не будет такие алиас делать, сейчас то тоже можно станичнику в меню создать с любым алиасом)

Но всё же задача стоит убрать text- перед алиас категории постов)

Нашел где убрать ( удаляем "text-" тут \modules\article\config\handlers.inc.php)
Но после того, как убираю "text-" каталог товаров отдает 404 как исправить, подскажите кто в курсе!

Re: Убрать приставку text- у категории постов

text- эдесь не случайно. Т.к. эта конструкция участвует в определении контроллера который обрабатывает её.

А без префикса всё уходит на контроллер пункта меню где естественно вашей страницы нет.

6

Re: Убрать приставку text- у категории постов

Выкладываю инструкцию, как это делается правильно:

Вам нужно создать кастомный модуль, в котором вы перегрузите маршрут, по которому будет строиться URL ваших статей и новостей.

Статья по разработке собственного модуля - Разрабатываем собственный модуль

Для создания модуля будет достаточно создать 3 файла в папке config вашего модуля:
1 - file.inc.php
2 - module.xml
3 - handlers.inc.php

В файле handlers.inc.php нужно:

1) Перегрузить маршрут статьи ( последним аргументом идет параметр приоритета ):

function init()
{
    $this->bind('getroute', null, null, 0);
}

Создать функцию, которая перегружает маршрут:

public static function getRoute($routes)
{
    $routes[] = new \RS\Router\Route('article-front-view', array(
        '/{category:(blog|article)}/{id}/'
    ), null, t('Просмотр новости'));

    $routes[] = new \RS\Router\Route('article-front-previewlist', array(
        '/{category:(blog|article)}/'
    ), null, t('Список новостей/статей'));



    return $routes;
}

В скобках перечислены алиасы, по которым может строиться URL (blog|article)

Повысить оценку +1 Понизить оценку