Benutzer-Werkzeuge

Webseiten-Werkzeuge


typo3:realurl

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
typo3:realurl [2015/12/03 19:32] – Externe Bearbeitung 127.0.0.1typo3:realurl [2018/06/19 18:49] (aktuell) – [Defaultsprache immer mit Sprachkürzel in URL] admin
Zeile 7: Zeile 7:
   - TypoScript ergänzen   - TypoScript ergänzen
   - Konfiguration anlegen (realurl_conf.php)   - Konfiguration anlegen (realurl_conf.php)
-  - .htaccess anpassen+  - .htaccess einrichten 
 ==== TypoScript ==== ==== TypoScript ====
  
-  - **baseURL:** Setzt ein ''<base href="#" />'' in den Head-Bereich des HTML-CodesWird für verknüpfte Stylesheets, Bilder etc. benötigt, die einen relativen Pfad verwenden.+  - **absRefPrefix:** Stellt allen in TYPO3 generierten Links den gesetzten String voran, in diesem Beispiel ein Slash ''/''Dies sorgt für Root-relative Pfade.
   - **prefixLocalAnchors:** Fügt Ankern (Sprungmarken auf einer Seite) den vollen Pfad voran.   - **prefixLocalAnchors:** Fügt Ankern (Sprungmarken auf einer Seite) den vollen Pfad voran.
   - **simulateStaticDocuments:** Muss deaktiviert werden, wenn RealURL verwendet wird.   - **simulateStaticDocuments:** Muss deaktiviert werden, wenn RealURL verwendet wird.
Zeile 18: Zeile 19:
 <code typoscript> <code typoscript>
 config { config {
- baseURL http://www.example.org+    absRefPrefix = / 
- prefixLocalAnchors = all +    prefixLocalAnchors = all 
- simulateStaticDocuments = 0 +    simulateStaticDocuments = 0 
- tx_realurl_enable = 1+    tx_realurl_enable = 1
 } }
 </code> </code>
 +
 +Das früher gesetzte ''<base href="#" />'' Element im Head-Bereich ist heute nicht mehr zeitgemäß.
  
 ==== realurl_conf.php ==== ==== realurl_conf.php ====
  
-Die Datei wird in den Ordner ''typo3conf/'' gelegt. Die Zeile mit ''rootpage_id'' muss ggfangepasst werden. Bei Verwendung mit **news** müssen die Seiten-UIDs für Einzelansicht(en) und ggf. Kategorien und Tags angepasst werden.+Die Datei wird in den Ordner ''typo3conf/'' gelegt. Das Multidomain-Setup stammt von [[http://wiki.wowa-webdesign.de/typo3/realurl-conf|Wolfgang Wagner]], die gewünschten Domains können oben gesetzt werden. Bei Verwendung mit **news** müssen die Seiten-UIDs für Einzelansicht(en) und ggf. Kategorien und Tags angepasst werden.
  
-=== RealURL + News System (news) ===+=== RealURL 2.x + News System (news) ===
 <code php realurl_conf.php> <code php realurl_conf.php>
 <?php <?php
  
-$TYPO3_CONF_VARS['FE']['addRootLineFields'].= ',tx_realurl_pathsegment'; +$GLOBALS['TYPO3_CONF_VARS']['FE']['addRootLineFields'] .= ',tx_realurl_pathsegment';
-$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'] = array( +
-            'fileName' => array( +
-            'defaultToHTMLsuffixOnPrev' => 1, +
-            'index' => array( +
-                'print.html' => array( +
-                    'keyValues' => array( +
-                        'type' => 98, +
-                    ), +
-                ), +
-                '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, +
-                    ), +
-                ), +
-     ), +
- ), +
-        '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'=>+
-        ), +
-        'init' => array( +
-                'enableCHashCache' => TRUE, +
-                'enableCHashCache' => 1, +
-                'respectSimulateStaticURLs' => 0, +
-                'enableUrlDecodeCache' => 1, +
-                'enableUrlEncodeCache' => 1 +
-        ), +
-        'preVars' => array( +
-                array( +
-                        'GETvar' => 'L', +
-                        'valueMap' => array( +
-                                'en' => '1', +
-                        ), +
-                        'noMatch' => 'bypass', +
-                ), +
-                array( +
-                        'GETvar' => 'no_cache', +
-                        'valueMap' => array( +
-                                'nc' => 1, +
-                        ), +
-                        'noMatch' => 'bypass', +
-                ), +
-        ), +
-        '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, +
-                                ) +
-                        ) +
-                ), +
-                'newsCategoryConfiguration' => 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' => '-' +
-                                        ) +
-                                ) +
-                        ) +
-                ), +
-                'newsTagConfiguration' => 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' => '-' +
-                                        ) +
-                                ) +
-                        ) +
-                ), +
-                '17' => 'newsDetailConfiguration', +
-                // '18' => 'newsDetailConfiguration', // For additional detail pages, add their uid as well +
-                '21' => 'newsTagConfiguration', +
-                '4' => 'newsCategoryConfiguration',+
  
-        ), +// Domain 1: 
-        'postVarSets' => array( +$domain1 = 'www.beispiel.de'; 
-                '_DEFAULT=> array( +$rootPageUid1 1;
-                        'controller' => array( +
-                                array( +
-                                        'GETvar' => 'tx_news_pi1[action]', +
-                                        'noMatch' => 'bypass' +
-                                ), +
-                                array( +
-                                        'GETvar' => 'tx_news_pi1[controller]', +
-                                        'noMatch' => 'bypass' +
-                                ) +
-                        ),+
  
-                        'dateFilter' => array( +// Domain 2: 
-                                array( +$domain2 = 'www.example.org'; 
-                                        'GETvar' ='tx_news_pi1[overwriteDemand][year]', +$rootPageUid2 128;
-                                ), +
-                                array( +
-                                        'GETvar' => 'tx_news_pi1[overwriteDemand][month]', +
-                                ), +
-                        ), +
-                        'page' => array( +
-                                array( +
-                                        'GETvar' => 'tx_news_pi1[@widget_0][currentPage]', +
-                                ), +
-                        ), +
-                ), +
-        ), +
-); +
-?> +
-</code>+
  
-=== RealURL + News (tt_news) === +// Domain 3: 
-<code php realurl_conf.php> +$domain3 'www.example.com'; 
-<?php +$rootPageUid3 256; 
-$TYPO3_CONF_VARS['FE']['addRootLineFields'].= ',tx_realurl_pathsegment'; + 
-$TYPO3_CONF_VARS['EXTCONF']['realurl'array( +$rssFeedPageType 9818; // pageType of your RSS feed page (f.e. EXT:news) 
- '_DEFAULT' => array( + 
- 'init' => array( +$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'][$domain1] 
- 'enableCHashCache' => 1, +    'pagePath' => [ 
- 'appendMissingSlash' => 'ifNotFile', +        'spaceCharacter' => '-', 
- 'enableUrlDecodeCache' => 1, +        'languageGetVar' => 'L', 
- 'enableUrlEncodeCache' => 1, +        'expireDays=> '7', 
- 'postVarSet_failureMode' => '', +        'rootpage_id' => $rootPageUid1, 
- ), +        'autoUpdatePathCache' => '1', 
- 'redirects' => array()+    ], 
- 'preVars' => array( +    'init' => [ 
- array( +        'enableCHashCache' => 1, 
- 'GETvar' => 'no_cache', +        'appendMissingSlash' => 'ifNotFile', 
- 'valueMap' => array( +        'enableUrlDecodeCache' => 1, 
- 'nc' => 1+        'enableUrlEncodeCache' => 1, 
- )+    ], 
- 'noMatch' => 'bypass', +    'fileName' => 
- )+        'defaultToHTMLsuffixOnPrev=> 1
- array( +        'acceptHTMLsuffix' => 1
- 'GETvar' => 'L', +        'index' => [ 
- 'valueMap' => array( +            'feed.rss' => [ 
- 'de' => '0', +                'keyValues' => [ 
- 'en' => '1', +                    'type' => $rssFeedPageType
- )+                ] 
- 'valueDefault' => 'de', +            ]
- 'noMatch' => 'bypass', +            'sitemap.xml' => 
- ), +                'keyValues=> [ 
- ), +                    'type' => 841132
- 'pagePath' => array( +                ]
- 'type' => 'user'+            ], 
- 'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main', + 
- 'spaceCharacter' => '-', +        ] 
- 'languageGetVar' => 'L', +    ], 
- 'expireDays' => 7, +    'preVars' => [ 
- 'rootpage_id' => 1, +        [ 
- 'firstHitPathCache=> 1+            'GETvar' => 'L', 
- )+ 
- 'fixedPostVars' => array()+            // IDs of all languages and the wanted url part 
- 'postVarSets' => array( +            'valueMap' => [ 
- '_DEFAULT' => array( +                // 'de' => '0', 
- // news archive parameters +                'en' => '1', 
- 'archive' => array( +            ]
- array( +            'noMatch' => 'bypass', 
- 'GETvar' => 'tx_ttnews[year], +        ], 
- )+        [ 
- array( +            'GETvar' => 'no_cache', 
- 'GETvar' => 'tx_ttnews[month]' , +            'valueMap' => [ 
- 'valueMap' => array( +                'nc' => 1
- 'january' => '01', +            ], 
- 'february' => '02', +            'noMatch' => 'bypass', 
- 'march' => '03', +        ], 
- 'april' => '04', +    ], 
- 'may' => '05'+    'fixedPostVars' => 
- 'june' => '06', +        'newsDetailConfiguration=> [ 
- 'july' => '07', +            [ 
- 'august' => '08', +                'GETvar' => 'tx_news_pi1[action]', 
- 'september' => '09', +                'valueMap' => [ 
- 'october' => '10', +                    // 'detail' => '', 
- 'november' => '11', +                ]
- 'december' => '12', +                'noMatch' => 'bypass' 
- ) +            ]
- ), +            [ 
- )+                'GETvar' => 'tx_news_pi1[controller]', 
- // news pagebrowser +                'valueMap' => [ 
- 'browse' => array( +                    // 'News' => '', 
- array( +                ], 
- 'GETvar' => 'tx_ttnews[pointer]', +                'noMatch' => 'bypass
- )+            ]
- )+            [ 
- // news categories +                'GETvar' => 'tx_news_pi1[news]', 
- 'select_category' => array ( +                'lookUpTable' => [ 
- array( +                    'table' => 'tx_news_domain_model_news', 
- 'GETvar' => 'tx_ttnews[cat]', +                    'id_field' => 'uid', 
- )+                    'alias_field' => 'title', 
- )+                    'addWhereClause' => ' AND NOT deleted', 
- // news articles anMd searchwords +                    'useUniqueCache' => 1
- 'article' => array( +                    'useUniqueCache_conf' => 
- array( +                        'strtolower=> 1
- 'GETvar' => 'tx_ttnews[tt_news]', +                        'spaceCharacter' => '-' 
- 'lookUpTable' => array( +                    ]
- 'table' => 'tt_news', +                    'languageGetVar' => 'L', 
- 'id_field' => 'uid', +                    'languageExceptionUids' => '', 
- 'alias_field' => 'title', +                    'languageField' => 'sys_language_uid', 
- 'addWhereClause' => ' AND NOT deleted', +                    'transOrigPointerField' => 'l10n_parent', 
- 'useUniqueCache' => 1, +                    'autoUpdate' => 1, 
- 'useUniqueCache_conf' => array( +                    'expireDays=> 180
- 'strtolower' => 1, +                ] 
- 'spaceCharacter' => '-', +            ] 
- )+        ]
- )+        'newsCategoryConfiguration' => [ 
- )+            [ 
- array( +                'GETvar' => 'tx_news_pi1[overwriteDemand][categories]', 
- 'GETvar' => 'tx_ttnews[backPid]', +                'lookUpTable' => [ 
- )+                    'table' => 'sys_category'
- array( +                    'id_field' => 'uid'
- 'GETvar' => 'tx_ttnews[swords]', +                    'alias_field' => 'title', 
- )+                    'addWhereClause' => ' AND NOT deleted', 
- )+                    'useUniqueCache' => 1
- )+                    'useUniqueCache_conf' => [ 
- )+                        'strtolower' => 1
- // configure filenames for different pagetypes +                        'spaceCharacter' => '-' 
- 'fileName' => array( +                    ] 
- 'defaultToHTMLsuffixOnPrev' => 1, +                ] 
- 'index' => array( +            ] 
- 'print.html' => array( +        ], 
- 'keyValues' => array( +        'newsTagConfiguration' => [ 
- 'type' => 98, +            [ 
- )+                'GETvar' => 'tx_news_pi1[overwriteDemand][tags]', 
- )+                'lookUpTable' => [ 
- 'rss.xml' => array( +                    'table' => 'tx_news_domain_model_tag', 
- 'keyValues' => array( +                    'id_field' => 'uid', 
- 'type' => 100, +                    'alias_field' => 'title', 
- )+                    'addWhereClause' => ' AND NOT deleted', 
- )+                    'useUniqueCache' => 1, 
- 'rss091.xml' => array( +                    'useUniqueCache_conf' => [ 
- 'keyValues' => array( +                        'strtolower' => 1, 
- 'type' => 101, +                        'spaceCharacter' => '-' 
- )+                    ] 
- )+                ] 
- 'rdf.xml' => array( +            ] 
- 'keyValues' => array( +        ]
- 'type' => 102, +        '17' => 'newsDetailConfiguration'
- )+        // '18' => 'newsDetailConfiguration'// For additional detail pages, add their uid as well 
- )+        // '21' => 'newsTagConfiguration'
- 'atom.xml' => array( +        // '4' => 'newsCategoryConfiguration', 
- 'keyValues' => array( +    ], 
- 'type' => 103, +    'postVarSets' => [ 
- )+        '_DEFAULT' => [ 
- )+            // EXT:news 
- )+            'controller' => [ 
- )+                [ 
- )+                    'GETvar' => 'tx_news_pi1[action]', 
-)+                    'noMatch' => 'bypass' 
-?>+                ]
 +                [ 
 +                    'GETvar' => 'tx_news_pi1[controller]', 
 +                    'noMatch' => 'bypass' 
 +                ] 
 +            ]
 + 
 +            'dateFilter' => [ 
 +                [ 
 +                    'GETvar' => 'tx_news_pi1[overwriteDemand][year]'
 +                ]
 +                [ 
 +                    'GETvar' => 'tx_news_pi1[overwriteDemand][month]'
 +                ], 
 +            ], 
 +            'page' => [ 
 +                [ 
 +                    'GETvar' => 'tx_news_pi1[@widget_0][currentPage]', 
 +                ], 
 +            ], 
 +        ], 
 +        // configure filenames for different pagetypes 
 +        // 'fileName' => [ 
 +        //     'defaultToHTMLsuffixOnPrev' => 1, 
 +        //     'acceptHTMLsuffix' => 1, 
 +        //     'index' => [ 
 +        //         'print.html' => [ 
 +        //             'keyValues' => [ 
 +        //                 'type' => 98, 
 +        //             ]
 +        //         ]
 +        //         'rss.xml' => [ 
 +        //             'keyValues' => [ 
 +        //                 'type' => 100, 
 +        //             ]
 +        //         ]
 +        //         'rss091.xml' => [ 
 +        //             'keyValues' => [ 
 +        //                 'type' => 101, 
 +        //             ]
 +        //         ]
 +        //         'rdf.xml' => [ 
 +        //             'keyValues' => [ 
 +        //                 'type' => 102, 
 +        //             ]
 +        //         ]
 +        //         'atom.xml' => [ 
 +        //             'keyValues' => [ 
 +        //                 'type' => 103, 
 +        //             ]
 +        //         ]
 +        //     ]
 +        // ]
 +    ]
 +]
 + 
 +// Domain 2: 
 +$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'][$domain2] = $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'][$domain1]; 
 +$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'][$domain2]['pagePath']['rootpage_id'] = $rootPageUid2; 
 +//$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'][$domain2]['fixedPostVars']['129'] = 'newsDetailConfiguration'; 
 + 
 +// Domain 3:  
 +$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'][$domain3] = $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'][$domain1]; 
 +$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'][$domain3]['pagePath']['rootpage_id'] = $rootPageUid3; 
 +//$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'][$domain3]['fixedPostVars']['257'] = 'newsDetailConfiguration'; 
 + 
 + 
 +// Local web dev environment: 
 +$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']['client-1.test'] = $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'][$domain1]; 
 +$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']['client-2.test'] = $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'][$domain2]; 
 +$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']['client-3.test'] = $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'][$domain3];
 </code> </code>
  
-==== .htacess ====+==== .htaccess ====
  
-.htaccess aus Dummy-PaketDie zweite und letzte Zeile müssen angepasst werden.+Verwendet einfach die .htaccess, die im TYPO3-Core mitgeliefert wirdDiese enthält alle nötigen Konfigurationen.
  
-<code> +---- 
-RewriteEngine On + 
-RewriteBase +===== RealURL-Ergänzungen für Extensions ===== 
-RewriteRule ^(typo3|typo3temp|typo3conf|t3lib|tslib|fileadmin|uploads|showpic\.php)[L+ 
-RewriteRule ^typo3$ typo3/index_re.php [L+==== tt_news ==== 
-RewriteCond %{REQUEST_FILENAME} !-f + 
-RewriteCond %{REQUEST_FILENAME} !-d +**realurl_conf.php (Auszug):** 
-RewriteCond %{REQUEST_FILENAME} !-l +<code php
-RewriteRule .* /index.php [L]+'postVarSets' => [ 
 +    '_DEFAULT' => [ 
 +        // tt_news archive parameters: 
 +        'archive' => [ 
 +            [ 
 +                'GETvar' => 'tx_ttnews[year]', 
 +            ], 
 +            [ 
 +                'GETvar' => 'tx_ttnews[month]', 
 +                'valueMap' => [ 
 +                    'january' => '01', 
 +                    'february' => '02', 
 +                    'march' => '03', 
 +                    'april' => '04', 
 +                    'may' => '05', 
 +                    'june' => '06', 
 +                    'july' => '07', 
 +                    'august' => '08', 
 +                    'september' => '09', 
 +                    'october' => '10', 
 +                    'november' => '11', 
 +                    'december' => '12', 
 +                ] 
 +            ], 
 +        ], 
 + 
 +        // tt_news pagebrowser: 
 +        'browse' => [ 
 +            [ 
 +                'GETvar' => 'tx_ttnews[pointer]', 
 +            ], 
 +        ], 
 +        // tt_news categories: 
 +        'select_category' => [ 
 +            [ 
 +                'GETvar' => 'tx_ttnews[cat]', 
 +            ], 
 +        ], 
 +        // tt_news articles and searchwords: 
 +        'article' => [ 
 +            [ 
 +                'GETvar' => 'tx_ttnews[tt_news]', 
 +                'lookUpTable' => [ 
 +                    'table' => 'tt_news', 
 +                    'id_field' => 'uid', 
 +                    'alias_field' => 'title', 
 +                    'addWhereClause' => ' AND NOT deleted', 
 +                    'useUniqueCache' => 1, 
 +                    'useUniqueCache_conf' => [ 
 +                        'strtolower' => 1, 
 +                        'spaceCharacter' => '-', 
 +                    ], 
 +                ], 
 +            ], 
 +            [ 
 +                'GETvar' => 'tx_ttnews[backPid]', 
 +            ], 
 +            [ 
 +                'GETvar' => 'tx_ttnews[swords]', 
 +            ], 
 +        ], 
 +    ], 
 +],
 </code> </code>
  
-Quelle: http://www.oliver-thiele.de/cms-typo3/tutorials/realurl-tutorial.html+==== tt_products ====
  
 +**realurl_conf.php (Auszug):**
 +<code php>
 +'preVars' => [
 +    // EXT:tt_products - remove parameter
 +    [
 +        'GETvar' => 'tt_products[backPID]',
 +        'valueMap' => [
 +            'dummy' => '1',
 +        ],
 +        'noMatch' => 'bypass',
 +    ],
 +],
 +'postVarSets' => [
 +    '_DEFAULT' => [
 +        // EXT:tt_products
 +        'categories' => [
 +            [
 +                'GETvar' => 'tt_products[cat]',
 +                'lookUpTable' => [
 +                    'table' => 'tt_products_cat',
 +                    'id_field' => 'uid',
 +                    'alias_field' => 'title',
 +                    'addWhereClause' => ' AND NOT deleted',
 +                    'languageGetVar' => 'L',
 +                    'useUniqueCache' => 1,
 +                    'useUniqueCache_conf' => [
 +                        'strtolower' => 1,
 +                        'spaceCharacter' => '-',
 +                    ]
 +                ]
 +            ]
 +        ],
 +        'products' => [
 +            [
 +                'GETvar' => 'tt_products[product]',
 +                'lookUpTable' => [
 +                    'table' => 'tt_products',
 +                    'id_field' => 'uid',
 +                    'alias_field' => 'title',
 +                    'addWhereClause' => ' AND NOT deleted',
 +                    'languageGetVar' => 'L',
 +                    'useUniqueCache' => 1,
 +                    'useUniqueCache_conf' => [
 +                        'strtolower' => 1,
 +                        'spaceCharacter' => '-',
 +                    ]
 +                ]
 +            ]
 +        ],
 +        'backPID' => [
 +            [
 +                'GETvar' => 'tt_products[backPID]',
 +                'lookUpTable' => [
 +                    'table' => 'pages',
 +                    'id_field' => 'uid',
 +                    'alias_field' => 'title',
 +                    'addWhereClause' => ' AND NOT deleted',
 +                    'languageGetVar' => 'L',
 +                    'useUniqueCache' => 1,
 +                    'useUniqueCache_conf' => [
 +                        'strtolower' => 1,
 +                        'spaceCharacter' => '-',
 +                    ]
 +                ]
 +            ]
 +        ],
 +    ],
 +],
 +</code>
 ---- ----
 +===== Diverses =====
  
 ==== Ordner aus Pfad entfernen ==== ==== Ordner aus Pfad entfernen ====
Zeile 379: Zeile 423:
 Falls statt der oben angegebenen die automatische Konfiguration aktiviert wurde, erstellt RealURL diese für den aktuellen Stand der TYPO3-Instanz. Werden neue Domains oder Sprachen hinzugefügt, wird diese Konfiguration nicht aktualisiert! Daher muss die Datei ''_autoconf.php'' unter //typo3conf/realurl/// gelöscht werden. Ist diese nicht mehr vorhanden, legt RealURL eine neue Konfiguration an. Falls statt der oben angegebenen die automatische Konfiguration aktiviert wurde, erstellt RealURL diese für den aktuellen Stand der TYPO3-Instanz. Werden neue Domains oder Sprachen hinzugefügt, wird diese Konfiguration nicht aktualisiert! Daher muss die Datei ''_autoconf.php'' unter //typo3conf/realurl/// gelöscht werden. Ist diese nicht mehr vorhanden, legt RealURL eine neue Konfiguration an.
  
-===== Einzelne Seiten von RealURL ausschließen =====+==== Einzelne Seiten von RealURL ausschließen ====
  
 <code php> <code php>
Zeile 395: Zeile 439:
 </code> </code>
  
-===== Mehrsprachige 404-Seiten mit RealURL =====+==== Mehrsprachige 404-Seiten mit RealURL ====
  
 Eine mehrsprachige Seite sollte dem Nutzer auch eine lokalisierte Fehlermeldung ausgeben, wenn mal eine Seite nicht gefunden werden kann. Mit eingerichtetem RealURL kann folgender Code verwendet werden. Ab TYPO3 CMS 6.x muss dieser in die ''AdditionalConfiguration.php'' in ''typo3conf/'', in älteren Versionen kam er direkt in die ''localconf.php''.\\ Eine mehrsprachige Seite sollte dem Nutzer auch eine lokalisierte Fehlermeldung ausgeben, wenn mal eine Seite nicht gefunden werden kann. Mit eingerichtetem RealURL kann folgender Code verwendet werden. Ab TYPO3 CMS 6.x muss dieser in die ''AdditionalConfiguration.php'' in ''typo3conf/'', in älteren Versionen kam er direkt in die ''localconf.php''.\\
Zeile 413: Zeile 457:
 ?> ?>
 </code> </code>
- 
  
 Quelle: http://blog.exites.de/blog/2011/12/404-fehlerseite-bei-mehrsprachiger-typo3-seite-und-realurl/ Quelle: http://blog.exites.de/blog/2011/12/404-fehlerseite-bei-mehrsprachiger-typo3-seite-und-realurl/
 +
 +==== Defaultsprache immer mit Sprachkürzel in URL ====
 +
 +Hierfür muss ''noMatch'' aus der //realurl_conf.php// entfernt werden und stattdessen ''valueDefault'' hinzugefügt werden. Beachte: als Wert das gewünschte Kürzel eintragen, nicht die UID der Sprache!\\
 +Über TypoScript wird der GET-Parameter ''L'' mit ''0'' als Default-Wert ausgegeben, falls nicht anderweitig gesetzt.
 +
 +**Typoscript:**
 +<code typoscript>
 +config.defaultGetVars.L = 0
 +</code>
 +
 +**realurl_conf.php (Auszug):**
 +<code php>
 +'preVars' => array(
 +    array(
 +        'GETvar' => 'L',
 +        'valueMap' => array(
 +            'de' => '0',
 +            'en' => '1',
 +        ),
 +        // 'noMatch' => 'bypass',
 +        'valueDefault' => 'de',
 +    ),
 +),
 +</code>
typo3/realurl.1449167550.txt.gz · Zuletzt geändert: 2016/01/16 19:29 (Externe Bearbeitung)