[TYPO3-german] Re: [TYPO3-german] PageID von zwei Ebenen höher
JoH
info at cybercraft.de
Thu Sep 28 23:14:06 CEST 2006
>> In Deinem Fall gäbe es also zwei Lösungmöglichkeiten:
>>
>> leveluid:1 oder leveluid:-3
>>
>> Wobei ich gerade feststelle, dass Du eine Seite ausgewählt hast, die
>> sich gar nicht in der eigentlichen Rootline befindet.
>> Liegt der Fehler jetzt in der Beschreibung oder im Betreff Deiner
>> Nachricht?
>
> danke für den Tipp. Aber so richtig rund komme ich damit (noch) nicht.
> Wie gesagt, ich muss in der Extension an die ID ran kommen - nicht per
> TypoScript in einem Template!
Na und? - Man kann auch eine Extension ganz hervorragend mit Hilfe von
TyoScript konfigurieren und dabei sämtliche cObjects nutzen.
Du mußt lediglich im TS-Setup Deines Plugins innerhalb der userFunc ein
entsprechendes Setup einbinden.
userFunc = meineKlasse -> meineFunktion
userFunc {
rootline_ID =TEXT
rootline_ID.data = leveluid :1
}
Danach steht Dir das Setup innerhalb der Funktion im Array $conf zur
Verfügung.
Ausführen kannst Du sowas in Deiner Funktion dann z.B. mit:
$rootline_ID =
$this->cObj->cObjGetSingle($conf['rootline_ID'],$conf['rootline_ID.']);
> Muss ich denn nun an der Config (Installtool) was ändern? Habe in
> [FE][addRootLineFields] mal "leveluid" eingetragen. Und das in der
> Hoffnung, dass dieser Wert dann in den Seiten mit "protokolliert"
> wird. Danach ist aber keine Seite im Frontend mehr abrufbar:
Das ist ziemlicher Lötzinn, weil leveluid bereits das Feld uid in der
Rootline durchsuchen kann. Das gleiche gilt für leveltitle (Feld: title) und
levelmedia (Feld: media).
Alle anderen Felder müssen in [FE][addRootLineFields] eingetragen werden,
falls Du sie mit Hilfe von levelfield erreichen willst.
Damit also sowas
levelfield:-1, meinFeld
klappt, mußt Du das Feld meinFeld in die CSV Liste [FE][addRootLineFields]
einfügen.
> Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL
> result resource in
> /var/www/t3/typo3_src-4.0.1/t3lib/class.t3lib_db.php on line 801
> Error!
>
> The requested page didn't have a proper connection to the tree-root!
> (Broken rootline)
>
> Die Seiten liegen alle in der gleichen Rootline. Habe ich nur blöd
> illustriert. Ich bin da leider noch nicht weiter, trotz deiner Hilfe.
Sollte so wie gezeigt problemlos klappen.
Außerdem hat das den Vorteil, dass Du mitHilfe von TypoScript Extension
Templates oder Conditions für jedes Seite separat festlegen kannst, welches
Level auf dieser Seite (und z.B. auch deren Unterseiten) berücksichtig
werden soll.
Mit einer rein PHP basierten Lösung ginge das nicht, weil der Wert dann fest
verdrahtet wäre.
Gerade die Kombination aus TypoScript und PHP macht TYPO3 zu einem so
mächtigen und komfortablen Werkzeug. IMHO sollte man darauf nicht
verzichten.
Joey
--
Wenn man keine Ahnung hat: Einfach mal Fresse halten!
(If you have no clues: simply shut your knob sometimes!)
Dieter Nuhr, German comedian
openBC: http://www.cybercraft.de
T3 cookbook: http://www.typo3experts.com
More information about the TYPO3-german
mailing list