2016-05-13 9 views
0

Конфигурация realurl с tx_news отлично подходит для меня, но у меня есть одна проблема. Мне не нужно имя детали в адресе.TYPO3 7.6 - tx_news 4.2.1 - нет подробного названия в realurl?

www.domain.org/news-list/ новостей подробно/ тест-новости-имя-здесь/

и теперь мне не нужно "Новости-деталь".

Здесь PHP код realurl.php

<?php 


$TYPO3_CONF_VARS['FE']['addRootLineFields'].= ',tx_realurl_pathsegment'; 
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'] = array( 
'pagePath' => array(
    'type' => 'user', 
    'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main', 
    'spaceCharacter' => '-', 
    'languageGetVar' => 'L', 
    'expireDays' => '3', 
    'rootpage_id' => 1, 
    'firstHitPathCache'=>1 
), 
'init' => array(
    'enableCHashCache' => TRUE, 
    'enableCHashCache' => 1, 
    'respectSimulateStaticURLs' => 0, 
    'enableUrlDecodeCache' => 1, 
    'enableUrlEncodeCache' => 1 
), 
'preVars' => array(
    array(
     'GETvar' => 'L', 
     'valueMap' => array(
      //'de' => '0', 
      //'en' => '1', 
     ), 
     'noMatch' => 'bypass', 
    ), 
    array(
     'GETvar' => 'no_cache', 
     'valueMap' => array(
      'nc' => 1, 
     ), 
     'noMatch' => 'bypass', 
    ), 
), 

'fileName' => array(
    'index' => array(
    'sitemap.xml' => array(
     'keyValues' => array(
     'type' => 1234, 
    ), 
    ), 
), 
), 

'fixedPostVars' => array(
    'newsDetailConfiguration' => array(
     array(
      'GETvar' => 'tx_news_pi1[action]', 
      'valueMap' => array(
       'detail' => '', 
      ), 
      'noMatch' => 'bypass', 
     ), 
     array(
      'GETvar' => 'tx_news_pi1[controller]', 
      'valueMap' => array(
       'News' => '', 
      ), 
      'noMatch' => 'bypass', 
     ), 

     array(
      'GETvar' => 'tx_news_pi1[news]', 
      'lookUpTable' => array(
       'table' => 'tx_news_domain_model_news', 
       'id_field' => 'uid', 
       'alias_field' => 'title', 
       'addWhereClause' => ' AND NOT deleted', 
       'useUniqueCache' => 1, 
       'useUniqueCache_conf' => array(
        'strtolower' => 1, 
        'spaceCharacter' => '-', 
       ), 
       'languageGetVar' => 'L', 
       'languageExceptionUids' => '', 
       'languageField' => 'sys_language_uid', 
       'transOrigPointerField' => 'l10n_parent', 
       'autoUpdate' => 1, 
       'expireDays' => 180, 
      ), 
     ), 
    ), 

    '6' => 'newsDetailConfiguration', 
    // For additional detail pages, add their uid as well 
    //'13' => 'newsDetailConfiguration', 
    //'22' => 'newsDetailConfiguration', 
    //'4' => 'newsTagConfiguration', 
    //'4' => 'newsCategoryConfiguration', 

), 
'postVarSets' => array(
    '_DEFAULT' => array(
     'controller' => array(
      array(
       'GETvar' => 'tx_news_pi1[action]', 
       'noMatch' => 'bypass', 
      ), 
      array(
       'GETvar' => 'tx_news_pi1[controller]', 
       'noMatch' => 'bypass', 
      ), 
     ), 
     'stadt' => array(
      array(
       'GETvar' => 'tx_news_pi1[overwriteDemand][categories]', 
       'lookUpTable' => array(
        'table' => 'sys_category', 
        'id_field' => 'uid', 
        'alias_field' => 'title', 
        'addWhereClause' => ' AND NOT deleted', 
        'useUniqueCache' => 1, 
        'useUniqueCache_conf' => array(
         'strtolower' => 1, 
         'spaceCharacter' => '-', 
        ), 
       ), 
      ), 
     ), 

     'tags' => array(
      array(
       'GETvar' => 'tx_news_pi1[overwriteDemand][tags]', 
       'lookUpTable' => array (
        'table' => 'tx_news_domain_model_tag', 
        'id_field' => 'uid', 
        'alias_field' => 'title', 
        'addWhereClause' => 'AND NOT deleted', 
        'useUniqueCache' => 1, 
        'useUniqueCache_conf' => array (
        'strtolower' => 1, 
        'spaceCharacter' => '-', 
        ), 
       ), 
      ), 
     ), 

     'seite' => array(
      array(
       'GETvar' => 'tx_news_pi1[@widget_0][currentPage]', 
      ), 
     ), 

     // news archive parameters 
     'archiv' => array(
      array(
       'GETvar' => 'tx_news_pi1[overwriteDemand][year]', 
      ), 
      array(
       'GETvar' => 'tx_news_pi1[overwriteDemand][month]', 
       'valueMap' => array(
        'january' => '01', 
        'february' => '02', 
        'march' => '03', 
        'april' => '04', 
        'may' => '05', 
        'june' => '06', 
        'july' => '07', 
        'august' => '08', 
        'september' => '09', 
        'october' => '10', 
        'november' => '11', 
        'december' => '12', 
       ), 
      ), 
     ), 

    ), 
), 
// configure filenames for different pagetypes 
'fileName' => array(
    'defaultToHTMLsuffixOnPrev' => 0, 
), 
); 

?> 

Мне нужно, что TypoScript?

plugin.tx_news { 
    settings { 
      link { 
        skipControllerAndAction = 1 
      } 
    } 
} 

В Detail-странице я проверяю RealUrl:

tx_realurl_exclude = 1 
+1

У вас есть проблемы с realUrl? Какой URL-адрес вашей страницы новостей? – sven

+0

Я не знаю, связано ли это с новостями о расширении. это также может быть проблемой с RealUrl. Я проверил пункт: «Не показывать в реале» на сайте deatil. :( –

+0

Для дальнейшей помощи вам важно знать, какой URL-адрес вашей страницы новостей. Что произойдет, если вы перейдете в/news-list/news-detail? – sven

ответ

2

Вы можете использовать плагин версии & на той же странице. Проверьте этот адрес: https://forge.typo3.org/issues/50489

lib.news = USER 
lib.news { 
userFunc = tx_extbase_core_bootstrap->run 
pluginName = Pi1 
extensionName = News 
controller = News 
settings =< plugin.tx_news.settings 
persistence =< plugin.tx_news.persistence 
view =< plugin.tx_news.view 
} 
lib.news_list< lib.news 
lib.news_list { 
action = list 
switchableControllerActions.News.1 = list 
} 
lib.news_detail < lib.news 
lib.news_detail { 
action = detail 
switchableControllerActions.News.1 = detail 
} 

[globalVar = GP:tx_news_pi1|news > 0] 

lib.field_news_single < lib.news_detail 
[else] 
lib.field_news_list < lib.news_list 
[end] 
+0

нормально, спасибо, он отлично работает с конфигурацией: список и детали на той же странице! –

2

Ответ: это не представляется возможным исключить ток (= последний) страницы говорить URL.

Если вас интересуют технические подробности, вы можете узнать больше о RealURL.

1

Просто дополнительный последующую другое решение:

Используйте условие TypoScript для отображения динамически плагин подробно на странице списка.

[globalVar = GP:tx_news_pi1|news > 0] 
    page.10 > 
    page.10 < lib.news 
[global] 

Конечно, вы можете делать гораздо более причудливые вещи, если вам нужно сделать рендеринг, например. другие элементы контента!

[globalVar = GP:tx_news_pi1|news > 0] 
    page.10 > 
    page.10 = CONTENT 
    page.10 { 
    table = tt_content 
    pidInList = <page ID of your detail page> 
    orderBy = sorting 
    } 
[global] 

Это отобразит все элементы контента на подробной странице на странице списка.