Zum Inhalt springen

RealUrl und eigene extension ohne CHash in der URL

Erstellt am 9. November 2011 · 7 Antworten · letzte Antwort am 27. November 2011

Tags: RealURL, Frage

Halion ·

Hallo Community,
ich habe eine extension geschrieben welche typolinks mit einem cHash Wert verwendet (Um diese indexierbar zu machen).
In der extension gibt es diverse Detailseiten und Listenansichten analog zu tt_news.
Nun wird bei jeder Detailseite ein CHash Wert am Ende der URL angehängt.
Die Detailseiten werden in meiner RealUrl Konfiguration mit fixedPostVars umgeschrieben.

'249' => array(
                    array(
                        'GETvar' => 'tx_myext[uid]',
                        'lookUpTable' => array(
                            'table' => 'tx_myext_beta',
                            'id_field' => 'uid',
                            'alias_field' => 'title',
                            'addWhereClause' => ' AND NOT deleted',
                            'useUniqueCache' => 1,
                            'useUniqueCache_conf' => array(
                                'strtolower' => 1,
                                'spaceCharacter' => '-',
                                ),
                            ),
						
					
                         ),									
         ),

Der Parameter useUniqueCache habe ich momentan aktiviert allerdings hängt er ja dadurch am Ende einen Chash (Wenn auch kürzer als der Orginal Chash) hinten dran.
Ist es möglich wie bei tt_news komplett auf diesen CHash zu verzichten?

2.tes Problem war das ich den Wert useUniqueCache auf 0 gesetzt habe, dann werden allerdings die Titel der Detailseiten nicht mehr durch ein "-"Zeichen getrennt sondern mit Blanks??

Also Frage: Wie kann ich auf den cHash in der URL verzichten, so dass aber trotzdem die Seiten indexiert werden und das Trennzeichen verwendet wird bei Titeln mit mehreren Wörtern?

Wäre Super wenn jemand einen Rat hat??

Gruß
Halion

aemka ·

Nein, aber du sollst ihn ja auch einschalten und nicht ausschalten, damit du den cHash aus der URL raus bekommst.

Halion ·

Danke für die Antwort,
allerdings scheint folgender Parameter keine Auswirkuzngen zu haben: 'useCHashCache' => 1,

Habe diesen in der localconf bei diesem Abschnitt der fixedPostVars eingefügt:

'fixedPostVars' => array(
	    '160' => array(
                    array(
                        'GETvar' => 'tx_myext[item]',
                        'lookUpTable' => array(
                            'table' => 'tx_myext_items',
                            'id_field' => 'uid',
                            'alias_field' => 'title',
                            'addWhereClause' => ' AND NOT deleted',
                            'useCHashCache' => 1,
                            'useUniqueCache' => 1,
                            'useUniqueCache_conf' => array(
                                'strtolower' => 1,
                                'spaceCharacter' => '-',
                                ),
                            ),
						
					
                         ),									
          ),

Wenn ich den Parameter useUniqueCache auf 0 setzte, habe ich zwar kein CHash-Wert am Ende aber leider werden die Titel wieder mit %20 getrennt und nicht mit '-'.

Hast du eine Idee wie ich das in den Griff bekomme...?

Gruß

aemka ·

Da gehört der Paramter auch nicht hin. Ausserdem habe ich ihn falsch benannt. Es heißt enableCHashCache und gehört in den init Part der realurl config.

Halion ·

Hallo, danke für die Antwort.
Allerdings habe ich den Parameter in meiner Init Configuration:

Hier mal die jetzige Config:

$TYPO3_CONF_VARS['FE']['addRootLineFields'].= ',title,alias';
$TYPO3_CONF_VARS['EXTCONF']['realurl'] =
array(
		'encodeSpURL_postProc' => array('user_encodeSpURL_postProc'),
        '_DEFAULT' => array(
        'init' => array(
            'enableCHashCache' => 1,
            'appendMissingSlash' => 'ifNotFile',
            'enableUrlDecodeCache' => 1,
            'enableUrlEncodeCache' => 1,
        ),
        'redirects' => array(),
        'preVars' => array(
            array(
                'GETvar' => 'no_cache',
                'valueMap' => array(
                    'nc' => 1,
                ),
                'noMatch' => 'bypass',
            ),
            array(
                'GETvar' => 'L',
                'valueMap' => array(
                    'en' => '2',
                    'de' => '1',
                ),
                'noMatch' => 'bypass',
            ),
        ),
        'pagePath' => array(
            'type' => 'user',
            'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
            'spaceCharacter' => '-',
            'languageGetVar' => 'L',
            'expireDays' => 3,
            'rootpage_id' => $RootPID[$_SERVER['HTTP_HOST']]
        ),
        'fileName' => array (
            'defaultToHTMLsuffixOnPrev'=> 0,
            'acceptHTMLsuffix' => 0,
      'index' => array (
        'sitemap.xml' => array (
          'keyValues' => array (
            'type' => 200
	  ),
        ),
      ),
        ),
       'fixedPostVars' => array(
	    '160' => array(
                    array(
                        'GETvar' => 'tx_myext[cal]',
                        'lookUpTable' => array(
                            'table' => 'tx_myext_cal',
                            'id_field' => 'uid',
                            'alias_field' => 'title',
                            'addWhereClause' => ' AND NOT deleted',
                            'useUniqueCache' => 1,
                            'useUniqueCache_conf' => array(
                                'strtolower' => 1,
                                'spaceCharacter' => '-',
                                ),
                            ),
						
					
                         ),									
          ),
		'199' => array(
                    array(
                        'GETvar' => 'tx_myext[cus]',
                        'lookUpTable' => array(
                            'table' => 'tx_myext_cal',
                            'id_field' => 'uid',
                            'alias_field' => 'title',
                            'addWhereClause' => ' AND NOT deleted',
							'spaceCharacter' => '-',
							
                            'useUniqueCache' => 1,
                            'useUniqueCache_conf' => array(
                                'strtolower' => 1,
                                'spaceCharacter' => '-',
                                ),
                            'useCHashCache' => 1,
							),
						
					
                         ),									
          ),
		'249' => array(
                    array(
                        'GETvar' => 'tx_myext[uid]',
                        'lookUpTable' => array(
                            'table' => 'tx_myext_pal',
                            'id_field' => 'uid',
                            'alias_field' => 'title',
                            'addWhereClause' => ' AND NOT deleted',
                            'useUniqueCache' => 1,
                            'useUniqueCache_conf' => array(
                                'strtolower' => 1,
                                'spaceCharacter' => '-',
                                ),
                            ),
						
					
                         ),									
         ),
		 '185' => array(
                    array(
                        'GETvar' => 'tx_myext[uid]',
                        'lookUpTable' => array(
                            'table' => 'tx_myext_pal',
                            'id_field' => 'uid',
                            'alias_field' => 'title',
                            'addWhereClause' => ' AND NOT deleted',
                            'useUniqueCache' => 1,
                            'useUniqueCache_conf' => array(
                                'strtolower' => 1,
                                'spaceCharacter' => '-',
                                ),
                            ),
						
					
                         ),									
         ),
					
       'news' => array(           
        array(
          'GETvar' => 'tx_ttnews[pointer]',
          'valueMap' => array(),
          'noMatch' => 'bypass',
        ),
        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' => '-',
            ),
            'languageGetVar' => 'L',
            'languageExceptionUids' => '',
            'languageField' => 'sys_language_uid',
            'transOrigPointerField' => 'l18n_parent',
            'autoUpdate' => 1,
            'expireDays' => 180,
          ),
        ),
      ),
     ),
        '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
                'article' => 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' => '-',
                                ),
                            ),
                        ),
                    array(
                        'GETvar' => 'tx_ttnews[backPid]',
                    ),
                    array(
                        'GETvar' => 'tx_ttnews[swords]',
                        ),
                    ),
                    
					
            	
			    ),
			
            ),
    ),
);

// RealURL - valueMap creation for tt-news
for($x=1; $x<=100; $x++) {
    $TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['news'][0]['valueMap'][$x+1] = $x;
}
// Definiert, dass die Singleanzeige der News sich auf Seiten 67 und 70 befinden
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['163'] = 'news';