Zum Inhalt springen

RealUrl

Erstellt am 6. März 2008 · 6 Antworten · letzte Antwort am 7. März 2008

Tags: Frage

DTPManiac ·

Hallo Experten,

ich bin noch recht unwissend was realurl angeht. Ich versuche grade eine url umzuschreiben. Der interessante Teil ist folgender:

http://www.test.de/details/?tx_smemployeelist_pi[empID]=5

Meine localconf.php hab ich wie folgt erweitert:

'postVarSets' => array( 
  '_DEFAULT' => array( 
     'name' => array(
      array(
	'Getvar' => 'tx_smemployeelist_pi1[empID]',
	'lookUpTable' => array (
		'table' => 'fe_users',
		'id_field' => 'uid',
		'alias_field' => 'name',
		'maxLength' => 50,
		'addWhereClause'=> 'AND NOT deleted',
		  'useUniqueCache'=> 1,
		  'useUniqueCache_conf' => array ( 
                                            'strtolower' => 1,
                                            'spaceCharacter' => '-',
                                            ),
                ),
       ),						
      ),
    ), 
 ),

Ersetzt werden soll ?tx_smemployeelist_pi[empID]=5. Idealerweise durch den Benutzername, den ich versuche aus der Tablle fe_users über das Mapping der id rauszuziehen.

Allerdings klappt das nicht, sprich' die URL ändert sich nicht. Woran kann das liegen? #paralyzed#

Danke schonmal

DTPManiac ·

Sorry, aber wie war die Antwort gemeint? In der Tabelle gibts u.A. das Feld username und name. username beinhaltet aber den Anmeldenamen und den will ich nicht nehmen. Deswegen als name als Feld.
So sieht die ganze Config in der localconf aus:

$TYPO3_CONF_VARS['EXTCONF'] ['realurl'] ['sd.tdl.de'] = 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', 
            ),  
        ), 
        'pagePath' => array(
			'type' => 'user',
			'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
			'spaceCharacter' => '-',
			'expireDays' => 3,
			'rootpage_id' => '110'
		),
        'fixedPostVars' => array(), 
        'postVarSets' => array( 
            '_DEFAULT' => array( 
                'archive' => array(
					array( 
                        'GETvar' => 'tx_ttnews[year]' , 
						'valueMap' => array( 
                            '2004' => '2004', 
                            '2005' => '2005', 
                            '2006' => '2006', 
                            '2007' => '2007', 
                            '2008' => '2008', 
                            )
                        ), 
                    array( 
                        'GETvar' => 'tx_ttnews[month]' , 
                        'valueMap' => array( 
                            'januar' => '01', 
                            'februar' => '02', 
                            'maerz' => '03', 
                            'april' => '04', 
                            'may' => '05', 
                            'juni' => '06', 
                            'juli' => '07', 
                            'august' => '08', 
                            'september' => '09', 
                            'oktober' => '10', 
                            'november' => '11', 
                            'dezember' => '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[swords]', 
                        ), 
                    array(
                        'GETvar' => 'tx_ttnews[backPid]',
                        ),
                    ),
		'name' => array(
		   array(
		     'Getvar' => 'tx_smemployeelist_pi1[empID]' ,
		     'lookUpTable' => array (
					'table' => 'fe_users',
					'id_field' => 'uid',
					'alias_field' => 'name',
					'maxLength' => 50,
					'addWhereClause'=> 'AND NOT deleted',
					'useUniqueCache'=> 1,
					'useUniqueCache_conf' => array (
							'strtolower' => 1,
							'spaceCharacter' => '-',
							),
					),
				),
			),
                ), 
            ), 
    // configure filenames for different pagetypes 
	'fileName' => array( 
		'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, 
					), 
				), 
            ), 
        ),  
);

Das Encoding der tt_news-URLs klappt fehlerfrei. Müssen irgendwelche Vorraussetzungen seitens der Extension, die ich in RealUrl "einbinden" will, erfüllt sein?

just2b ·

wenn in name was drinsteht, dann sollte das schon klappen!

ebenso muss IMO die url mit der api funktion generiert werden

georg