Как получить Speaking URL для News 7.0.7 на Typo3 9.5.0 - PullRequest
0 голосов
/ 25 октября 2018

Мне действительно нравится легкость, в которой Typo3 9.5.0 создает говорящие URL-адреса.

Единственная проблема, которая у меня есть, - заставить ее работать с такими расширениями, как новости.Не смог найти способ заставить его работать и понятия не имею, с чего начать.Благодарим Вас за помощь.

С уважением, Дэн

TYPO3 9.5.0 Новости 7.0.7

Ответы [ 3 ]

0 голосов
/ 25 октября 2018

Вы можете сделать это с помощью директивы routeEnhancers в YAML-файле конфигурации вашего сайта (обычно это htdocs / config / sites // config.yaml).В официальной документации есть пример, хотя и немного скрытый:

https://docs.typo3.org/typo3cms/extensions/core/Changelog/9.5/Feature-86365-RoutingEnhancersAndAspects.html

Это конфигурация, которую я активно использую:

rootPageId: <site id>
...
routeEnhancers:
 NewsPlugin:
  type: Extbase
  limitToPages:
    - 49 (when your news detail page id is 49)
    - ...
  extension: News
  plugin: Pi1
  routes:
    -
     routePath: '/blog/{page}'
     _controller: 'News::list'
     _arguments:
       page: '@widget_0/currentPage'
    -
     routePath: '/tag/{tag_name}'
     _controller: 'News::list'
     _arguments:
       tag_name: overwriteDemand/tags
    -
     routePath: '/{news_title}'
     _controller: 'News::detail'
     _arguments:
       news_title: news
    -
     routePath: '/archive/{year}/{month}'
     _controller: 'News::archive'
  defaultController: 'News::list'
  defaults:
   page: '0'
  aspects:
   news_title:
    type: PersistedAliasMapper
    tableName: tx_news_domain_model_news
    routeFieldName: path_segment
0 голосов
/ 13 марта 2019

Рабочий пример typo3 9.5.5 с tx_news 7.1.0 с PersistedPatternMapper:

routeEnhancers:
  NewsPlugin:
    type: Extbase
    limitToPages: [20,23,29,30]
    extension: News
    plugin: Pi1
    routes:
      - { routePath: '{page}',_controller: 'News::list',_arguments: {'page': '@widget_0/currentPage'} }
      - { routePath: '{news_title}',_controller: 'News::detail',_arguments: {'news_title': 'news'} }      
    defaultController: 'News::list'    
    defaults:
      page: '0'
    requirements:
      page: '\d+'
    aspects:      
      news_title:
        type: PersistedPatternMapper
        tableName: 'tx_news_domain_model_news'
        routeFieldPattern: '^(?P<path_segment>.+)-(?P<uid>\d+)$'
        routeFieldResult: '{path_segment}-{uid}'
      page:
        type: StaticRangeMapper
        start: '1'
        end: '200'
0 голосов
/ 25 октября 2018

новости расширения готовы к использованию основных URL-адресов начиная с версии 7.0.6.Убедитесь, что у вас правильная конфигурация, например, настройка модуля «Сайт на сайтах».

...