tt_news и RealURL: сократить URL новостной статьи

В настоящее время URL-адрес новостной статьи выглядит так:

www.domain.com/path/to/page/news/news-detail/article/название статьи

Есть ли способ сократить этот URL? Например. пропустили статью или новость?

В RealUrl-Configuration есть массив article, но я не знаю, могу ли я изменить его, например, на детали новостей...

Есть ли у вас какие-то идеи?

Я использую Typo3 4.5.5, realurl 1.11.2 и tt_news 3.0.1.


person testing    schedule 08.03.2012    source источник


Ответы (2)


Если вы хотите исключить ключевые слова, указывающие на новую часть переписанного URL, используйте fixedPostVars:

'fixedPostVars' => array(
    '123' =>array(
        array(
            'GETvar' => 'tx_ttnews[tt_news]',
            'lookUpTable' => array(
                'table' => 'tt_news',
                'id_field' => 'uid',
                'alias_field' => 'title',
                'addWhereClause' => ' AND NOT deleted',
                'useUniqueCache' => 1,
                'useUniqueCache_conf' => array(
                    'strtolower' => 1,
                    'spaceCharacter' => '-',
                ),
            ),
        ),
    ),
),

Это создаст URL-адрес вида domain.com/article/your-article-title, предполагая, что у вас есть следующая структура сайта:

root
 |- news (pid xy)
 |- article (pid 123)

Вы также можете иметь список и подробное представление на одной странице, что сделает URL-адреса еще более чистыми (domain.com/news/your-article-title):

root
 |- news (pid 123, configured for list and detail)
person konsolenfreddy    schedule 08.03.2012
comment
У меня есть ваш код из fixedPostVars в моей статье postVarSets в массиве. Должен ли я изменить это? Я думаю, что мне нужно только переместить мою страницу с подробными новостями в корень, как вы написали. Если бы у меня был список и подробное представление на одной странице, я бы увидел обзор новостей и сами новости. Не знаю, нужно ли это, но спасибо за ваше предложение. - person testing; 09.03.2012
comment
Что вы думаете об этом ? - person testing; 09.03.2012
comment
ad1) Да, вам придется переместить его из postVarSets в fixedPostVars (синтаксис в них обоих немного отличается). ad2) Указатель в примере конфига не нужен ИМХО. - person konsolenfreddy; 09.03.2012

Один из способов — исключить некоторые страницы из пути URL?

www.domain.com/news-detail/article/articlename

Вы также можете использовать другой ключ в качестве идентификатора (например, Id вместо заголовка новости). Он будет менее удобочитаемым, но намного короче.

www.domain.com/news-detail/article/articleid
person Fedir RYKHTIK    schedule 08.03.2012
comment
Первое решение кажется интересным! Означает ли это, что мне нужно будет только переместить страницу на более высокий уровень дерева страниц и соответствующим образом изменить страницу в настройках новостей? - person testing; 08.03.2012
comment
Да, вы можете реорганизовать свое дерево, чтобы адаптировать систему к вашей стратегии SEO. Насколько я помню, Вы также могли скрыть страницу в URL, такая опция есть в свойствах страницы. - person Fedir RYKHTIK; 08.03.2012
comment
Вы имеете в виду вариант Override the whole page path? Это в сочетании с Speaking URL path segement. - person testing; 09.03.2012
comment
Исключить из говорящего URL, когда вы скрываете текущий сегмент страницы в пути URL. - person Fedir RYKHTIK; 09.03.2012