Russian TYPO3 community

Russian TYPO3 community (http://forum.typo3.ru/index.php)
-   Общие вопросы (http://forum.typo3.ru/forumdisplay.php?f=12)
-   -   RealUrl + tt_news pagebrowser (http://forum.typo3.ru/showthread.php?t=9649)

Tod 23.08.2011 14:25

RealUrl + tt_news pagebrowser
 
Возникла нерешаемая проблема, нужная помощь сообщества:) При использовании браузера страниц в tt_news и RealUrl ссылки на единичную новость получаются разные с разных страниц.

Например, заходим в раздел сайта "блог":
Код:

http://gothic4.com.ua/blog/post/45.html
http://gothic4.com.ua/blog/post/42.html

Внизу браузер страниц со ссылками
Код:

http://gothic4.com.ua/gameblog/browse/1.html
http://gothic4.com.ua/gameblog/browse/2.html

Казалось бы все нормально, но переходим на вторую страницу и все ссылки новостей "учитывают" в названии номер страницы - получается:
Код:

http://gothic4.com.ua/blog/browse/1/post/32.html
http://gothic4.com.ua/blog/browse/1/post/31.html

То есть пока новость на одной странице она имеет один URL, потом меняет на другой, третий и т.п. Как это можно исправить? Мой конфиг RealUrl, в принципе, стандартный:

Код:

$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'] = array(
        'init' => array(
            'enableCHashCache' => 1,
            'appendMissingSlash' => 'ifNotFile',
            'enableUrlDecodeCache' => 1,
            'enableUrlEncodeCache' => 1,
            'respectSimulateStaticURLs' => 0,
            'postVarSet_failureMode'=>'redirect_goodUpperDir',
        ),
    'redirects_regex' => array (
   
    ),
    'preVars' => array(
                        array(
                                'GETvar' => 'no_cache',
                                'valueMap' => array(
                                    'no_cache' => 0,
                                ),
                                'noMatch' => 'bypass',
                        ),
                        array(
                            'GETvar' => 'L',
                            'valueMap' => array(
                                                'en' => '1',
                                        ),
                                'noMatch' => 'bypass',
                        ),
                ),
    'pagePath' => array(
            'type' => 'user',
            'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
            'spaceCharacter' => '-',
            'languageGetVar' => 'L',
            'expireDays' => 7,
            'rootpage_id' => 1,
        ),


      'postVarSets' => array(
            '_DEFAULT' => array(
                // news archive parameters
                'archive' => array(
                    array(
                        'GETvar' => 'tx_ttnews[year]' ,
                        ),
                    array(
                        'GETvar' => 'tx_ttnews[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',
                            )
                        ),
                    ),
                // news pagebrowser
                'browse' => array(
                    array(
                        'GETvar' => 'tx_ttnews[pointer]',
                        ),
                    ),
                // news categories
                'select_category' => array (
                    array(
                        'GETvar' => 'tx_ttnews[cat]',
                        ),
                    ),
                // news articles and searchwords
                'post' => array(
                    array(
                        'GETvar' => 'tx_ttnews[tt_news]',
                        'lookUpTable' => array(
                            'table' => 'tt_news',
                            'id_field' => 'uid',
                            'alias_field' => 'uid',
                            'addWhereClause' => ' AND NOT deleted',
                            'useUniqueCache' => 1,
                            'useUniqueCache_conf' => array(
                                'strtolower' => 1,
                                'spaceCharacter' => '-',
                                ),
                            ),
                        ),
                    array(
                        'GETvar' => 'tx_ttnews[backPid]',
                                'valueMap' => array(
                                    'no_cache' => 0,
                                ),
                                'noMatch' => 'bypass',                                               
                                                ),                               
                    array(
                        'GETvar' => 'tx_ttnews[swords]',
                        ),
                    ),
                ),           
            ),

      'fileName' => array(
            'defaultToHTMLsuffixOnPrev'=>1,
            'index' => array(
                'rss.xml' => array(
                    'keyValues' => array(
                        'type' => 100,
                    ),
                ),
                'rss091.xml' => array(
                    'keyValues' => array(
                        'type' => 101,
                    ),
                ),
                'rdf.xml' => array(
                    'keyValues' => array(
                        'type' => 102,
                    ),
                ),
                'atom.xml' => array(
                    'keyValues' => array(
                        'type' => 103,
                    ),
                ),
            ),
        ),
 );

Если по смыслу, то он делает все правильно - параметр страницы передается, он его учитывает, но зачем подставлять в ссылки-то =\ Что интересно пробовал 5-6 разных конфигов tt_news найденных в сети - результат тот же, а вот на официальном сайте http://news.typo3.org/about/realurl-configuration/ такой проблемы нету с урлами при переходе на страницы все работает. Но при подстановке этого конфига возникает синтаксическая ошибка и он не сохраняется! Какой-то замкнутый круг :(

P.S. Похоже, что ситуация возникает не только с tt_news, но и другими экстеншенами с разбиением на страницы - tt_products например.

Андрей Аксенов 24.08.2011 08:45

А если попробовать другие версии RealURL? В разных версиях - разная логика работы, и нигде она не описана (по крайней мере я не нашел...). Может в этом проблема?

Tod 24.08.2011 14:13

Я пробовал последнюю 1.11.2 и до этого парочку предыдущих, знать бы какая на news.typo3.org)

Андрей Аксенов 24.08.2011 15:37

А если простым перебором? поставить версию 10...

dmartynenko 28.08.2011 17:41

RealURL тут точно не причем. Он просто кодирует те параметры, которые передаются в ссылке. Видимо баг (или фича?) в tt_news, который в ссылку подставляет дополнительно номер страницы. Возможно он это делает что бы работал backLink в режиме tt_news.single. Попробуйте через TS отключить backLink.

У нас надежно работает конфигурация, когда tt_news.single делается на отдельной странице (ее можно назвать post, а ID на ней выводить без префиксов через RealURL fixedPostVars). Страницы будут разными, а URL будут такими же.

Tod 30.08.2011 18:51

dmartynenko, да именно через fixedPostVars я и сделал. Как-то раньше об этом не подумал, а потом нашел работающий вариант в одном из своих сайтов и вспомнил как нужно.
Написал небольшой пост по настройке, возможно, кому-то пригодится - http://typo3ua.com/extensions/realur...s-pagebrowser/


Часовой пояс GMT +4, время: 03:12.

Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot