Zum Inhalt springen

RealURL Ebene ignorieren

Erstellt am 20. März 2007 · 7 Antworten · letzte Antwort am 24. Juli 2007

Tags: RealURL, URLs & Routing, Frage

areinhard ·

Hallo,

wie bekommt man RealURL dazu eine Ebene zu ignorieren?

vgl. http://www.typo3forum.net/forum/statische-webseiten/3097-spezialauftrag-fuer-real-url-ueberhaupt-moeglich.html
(So wie hier beschrieben habe, kam ich nicht zum gewuenschten Ergebnis)

Ich benutze in der Hauptebene ein Template das ich fuer mehrere Domains/Seiten verwenden will, z.B.:

Base
-Domain1.tld
--Rubrik1
---Seite1
---seite2
--Rubrik2
-Domain2.tld
--Kategorie1
--Kategorie2

RealUrl macht da ganz fein www.domain1.tld/domain1tld/seite1.html draus. Wie kann man das auf www.domain1.tld/seite1.html umbiegen, sprich die erste Ebene ignorieren?

RewriteEngine On
RewriteRule ^typo3$ - [L]
RewriteRule ^typo3/.*$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule .* index.php
<?php
$TYPO3_CONF_VARS['SC_OPTIONS'] ['t3lib/class.t3lib_tstemplate.php'] ['linkData-PostProc'] []
= 'EXT:realurl/class.tx_realurl.php:&tx_realurl->encodeSpURL';
$TYPO3_CONF_VARS['SC_OPTIONS'] ['tslib/class.tslib_fe.php'] ['checkAlternativeIdMethods-PostProc'] []
= 'EXT:realurl/class.tx_realurl.php:&tx_realurl->decodeSpURL';
$TYPO3_CONF_VARS['SC_OPTIONS'] ['t3lib/class.t3lib_tcemain.php'] ['clearAllCache_additionalTables'] ['tx_realurl_urldecodecache']
= 'tx_realurl_urldecodecache';
$TYPO3_CONF_VARS['SC_OPTIONS'] ['t3lib/class.t3lib_tcemain.php'] ['clearAllCache_additionalTables'] ['tx_realurl_urlencodecache']
= 'tx_realurl_urlencodecache';
$TYPO3_CONF_VARS['FE'] ['addRootLineFields'] .=
',tx_realurl_pathsegment,alias,nav_title,title';
$TYPO3_CONF_VARS['EXTCONF'] ['realurl'] ['_DEFAULT'] = array(
'init' => array(
'enableCHashCache' => 1,
'enableUrlDecodeCache' => 1,
'enableUrlEncodeHash' => 1,
// 'postVarSet_failureMode' => 'redirect_goodUpperDir',
),
'rewrite' => array(
),
'preVars' => array(
/*
array(
'GETvar' => 'L',
'valueMap' => array(
'de' => '0',
'en' => '1',
'valueDefault' => 'de',
),
),
*/
),
'pagePath' => array(
'type' => 'user',
'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
'spaceCharacter' => '-',
'languageGetVar' => 'L',
'expireDays' => 3,
'rootpage_id' => '1'
),
'fileName' => array (
'defaultToHTMLsuffixOnPrev' => 1,
'index' => array(
'page.html' => array(
'keyValues' => array (
'type' => 1,
),
),
),
),
'fixedPostVarSets' => array(
),
'postVarSets' => array(
'_DEFAULT' => array(
//archive
'period' => array (
array (
'condPrevValue' => -1,
'GETvar' => 'tx_ttnews[pS]',
//'valueMap => array()
),
array (
'GETvar' => 'tx_ttnews[pL]',
//'valueMap => array()
),

array (
'GETvar' => 'tx_ttnews[arc]',
'valueMap' => array(
'non-archived' => -1,
),
),
),

'browse' => array (
array (
'GETvar' => 'tx_ttnews[pointer]',
),
),
'select' => array (
array (
'GETvar' => 'tx_ttnews[cat]',
'lookUpTable' => array (
'table' => 'tt_news_cat',
'id_field' => 'uid',
'alias_field' => 'title',
'addWhereClause'=> 'AND NOT deleted',
'useUniqueCache'=> 1,
'useUniqueCache_conf' => array (
'strtolower' => 1,
'spaceCharacter' => '-',
),
),
),
),
'article' => array(
array (
'GETvar' => 'tx_ttnews[backPid]',
// 'valueMap => array(
// ),
),
array (
'GETvar' => 'tx_ttnews[tt_news]',
'lookUpTable' => array (
'table' => 'tt_news',
'id_field' => 'uid',
'alias_field' => 'title',
'maxLength' => 12,
'addWhereClause'=> 'AND NOT deleted',
'useUniqueCache'=> 1,
'useUniqueCache_conf' => array (
'strtolower' => 1,
'spaceCharacter' => '-',
),
),
),
),
),
),
);
?>

Freundliche Gruesse,
Alex

osiris_d ·

Hallo Alex,
hallo ihr alle,

unerfreulicherweise habe ich genau das gleiche problem und noch keine lösung gefunden.

ich habe eine seite mit einer standard-ebene und darunter 2 ebenen mit den eigentlichen domains und jetzt genau das identische problem mit der zwischen-ebene.

also die hauptdomains ist
www.pferdereisen.de
und die anderen
www.forsthaus-ihlow.de

nur das er bei forsthaus-ihlow.de bei der seite impressum den link:

www.forsthaus-ihlow.de/forsthaus-ihlowde/impressum.html

erzeugt. 🙁

die seitenstrukur ist:
+ standardseite (root-template)
++ pferderreisen.de (root-template)
+++ forsthaus-ihlow.de (ext-template)

rootpage_id ist korrekt angeben,
domain-records und baseurl auch.

wenn ich im template der 2. ebene dann zusätzlich "Rootlevel" aktiviere funktionert es - das ist aber vor allem bei einem anderen projekt mit 20 domains in einer umgebung keine option - dann verliere ich ja die "vererbung".

hat jemand vielleicht eine idee?

schöne grüße

alex 😉

osiris_d ·

Problem erkannt - Problem gebannt!

Nach langer Recherche habe ich das Problem folgendermaßen gelöst:

ich habe den Seitentyp der jeweiligen /Root-Seite/ auf Erweitert umgestellt und dann kann man bei den Seiteneigenschaften der Seite: Speaking URL path segment mit / belegen. Fertig.

Grüße

Alex.

Spyker ·

Aus USebillity Gründen sowie auch für die Suchmaschinen, würde ich den langen Pfad nicht abschalten, weil so ein User direkt sieht in welchem Zweig der Seite er grade Surft.

Beste Grüße,
Tim

SRitter ·

ich habe das umgekehrte Problem...
ich schaffe es nicht, dass die root Ebene eingeblendet wird...
Kurzer Tipp?

smindel ·

hallo osiris_d,

super tip, die urls werden richtig erzeugt.

leider werden sie aber nicht richtig aufgelöst. da muß bestimmt noch etwas in der htaccess (rewrite) geändert werden.

kannst du nochmal helfen

merci

andy

honululu2 ·

🙂 kein wunder das keiner auf meinen thread antwortet...ist ja hier das gleiche problem

Trotzdem nochmal weitergebohrt: Kennt wirklich niemand eine andere als die oben beschriebene Möglichkeit diese unerwünschte Ebene auszublenden? Habe mir bereits überlegt ob ich eine eigene klasse zum auflösen der Path Segmente schreiben soll bzw. die Advanced leicht modifizieren. Ich finde die hier beschriebene Lösung höchst unbefriedigend, auch wenns wunderbar funktioniert.

Trotzdem großen dank an osiris_d!