TYPO3 – RealUrl aus mehreren Tabellenspalten aufbauen
Für ein TYPO3-Portal in dem die Extension tx_news eingesetzt wird, wollte wir die Web-URL nicht nur mit dem Seitentitel aufbauen, sondern noch weitere Datenbank-Felder hinzufügen.
www.domain.de/liste/news-name-hier/
sollte geändert werden in:
www.domain.de/liste/news-name-hier-stadtname-20uid/
Um nun in TYPO3 die RealUrl-Config aus mehreren Tabellenspalten aufbauen, müsst Ihr folgendes in der Datei: realurl_config.php an dem tx_news Beispiel ändern:
array( 'GETvar' => 'tx_news_pi1[news]', 'lookUpTable' => array( 'table' => 'tx_news_domain_model_news', 'id_field' => 'uid', //'alias_field' => 'title', 'alias_field' => "CONCAT(title, '-', town, '-', '20', uid)", '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, ), ),
anstatt den bekannten alias_field mit dem title aufzubauen, müsst Ihr die Ausgabe nun etwas ändern und mit vorhandenen Datenbankfelder bearbeiten:
‚alias_field‘ => „CONCAT(title, ‚-‚, town, ‚-‚, ’20‘, uid)“,
Wir haben in unserer Datenbank: Titel, Town, uid
Zusätzlich haben wir noch die uid um die Zahl 20 erweitert und sieht dann zum Beispiel so aus: www.domain.de/liste/news-name-hier-frankfurt-21375/
Funktioniert soweit auch mit jeder anderen Exension oder Seiten.
Eure Meinung zu dem Artikel ist gefragt! Schreibt mir ein Kommentar
Ich freue mich auf einen Blick auf meine Amazon-Wunschliste. Vielen Dank!
Andreas
Wenn die die Segment-Felder keine Pflichtfelder im BE sind: CONCAT() liefert nichts zurück, sollte auch nur einer der Parameter null sein. Daher eher CONCAT_WS(), das liefert nur beim fehlenden Separator NULL zurück.