TYPO3Jack.net - Das TYPO3 Mailinglist Forum Archiv

Die TYPO3 Mailingliste - nicht fragen: lesen!

[TYPO3-german] Verständnisfrage ifEmpty.cObject

This is a discussion on [TYPO3-german] Verständnisfrage ifEmpty.cObject within the typo3-german@lists.netfielders.de forums, part of the TYPO3-Mailinglisten: DEUTSCH category; Hallo zusammen, ich habe mir ein funktionierendes TS gebastelt und frage mich, ob der Ansatz gut ist oder ob es ...


Zurück   TYPO3Jack.net - Das TYPO3 Mailinglist Forum Archiv > TYPO3-Mailinglisten: DEUTSCH > typo3-german@lists.netfielders.de

Registrieren Hilfe Benutzerliste Kalender Suchen Heutige Beiträge Alle Foren als gelesen markieren
  #1  
Alt 08.08.2007, 10:25
Michael Meurer
Gast
 
Beiträge: n/a
Standard [TYPO3-german] Verständnisfrage ifEmpty.cObject

Hallo zusammen,

ich habe mir ein funktionierendes TS gebastelt und frage mich, ob der
Ansatz gut ist oder ob es einen besseren Weg gibt ...
In der Liste hab ich nichts Passendes gefunden. Das hier hab ich mir mit
Hilfe diverser Listenpostings, dem Kochbuch und der TSRef zusammengebastelt.

Der Inhalt meiner linken Spalte wird standardmäßig aus einer einzelnen
Seite für die ganze Website ausgelesen.
Jetzt möchte ich eine Möglichkeit haben, dass ich für einzelne Seiten
dieses überschreibe. Eine Vererbung wäre uninteressant, da unterhalb der
Seiten wieder automatisch der Standard greifen soll.

Dieses TS habe ich mir gebaut:

+++ snip +++
LINKS < lib.content_left
+++ snip +++

lib.content_left = COA
lib.content_left {
10 < styles.content.get
10 {
table = tt_content
select.where = colPos = 1
select.orderBy = sorting
}
10.stdWrap.ifEmpty.cObject = CONTENT
10.stdWrap.ifEmpty.cObject {
table = tt_content
select.pidInList = 5
select.where = colPos = 1
select.orderBy = sorting
}
}

Es sieht eigentlich so aus, dass die Mehrzahl der Seiten den
Standardinhalt (pidInList = 5) nutzen wird.
Meine Frage daher:
Ist es vielleicht sinnvoller, die Sache anders herum aufzuziehen?
Wenn ja, wie?
Habe u. A. auch schon mit if.isTrue experimentiert, bin aber zu keinem
funktionierenden Ansatz gelangt.
Oder bleibt die Anzahl/Art der Abfragen gleich, egal, welcher Punkt
zuerst festgelegt worden ist?

Danke im Voraus.

Gruß
Michael
_______________________________________________
TYPO3-german mailing list
TYPO3-german (AT) lists (DOT) netfielders.de
http://lists.netfielders.de/cgi-bin/...o/typo3-german
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
  #2  
Alt 08.08.2007, 20:33
Martin Holtz
Gast
 
Beiträge: n/a
Standard Re: [TYPO3-german]Verständnisfrage ifEmpty.cObject

Hi Michael,

> Der Inhalt meiner linken Spalte wird standardmäßig aus einer einzelnen
> Seite für die ganze Website ausgelesen.
> Jetzt möchte ich eine Möglichkeit haben, dass ich für einzelne Seiten
> dieses überschreibe. Eine Vererbung wäre uninteressant, da unterhalb der
> Seiten wieder automatisch der Standard greifen soll.
>
> Dieses TS habe ich mir gebaut:
>
> +++ snip +++
> LINKS < lib.content_left
> +++ snip +++
>
> lib.content_left = COA
> lib.content_left {
> 10 < styles.content.get
> 10 {
> table = tt_content
> select.where = colPos = 1
> select.orderBy = sorting
> }
> 10.stdWrap.ifEmpty.cObject = CONTENT
> 10.stdWrap.ifEmpty.cObject {
> table = tt_content
> select.pidInList = 5
> select.where = colPos = 1
> select.orderBy = sorting
> }
> }
>
> Es sieht eigentlich so aus, dass die Mehrzahl der Seiten den
> Standardinhalt (pidInList = 5) nutzen wird.
> Meine Frage daher:
> Ist es vielleicht sinnvoller, die Sache anders herum aufzuziehen?
> Wenn ja, wie?

Naja, via Condition oder mit if.
10.stdWrap.if.value = 12,33,44
10.stdWrap.if.value.isInList.data = TSFE:id
# vorsicht, syntax nochmal prüfen..

Und dann nen zweite Abfrage mit
20.stdWrap.if.value = 12,33,44
20.stdWrap.if.value.isInList.data = TSFE:id
20.stdWrap.if.value.negate = 1

12,33,44 packst du sinnvoller Weise dann in eine Konstante.

Aber ich denke eigentlich ist der sauberste Weg der, den Du gewählt hast.
Denn dann wird auf allen Seiten, wo nichts in der Spalte steht, der
Default-Inhalt gelesen.

Mag sein, dass es für den Server ein wenig aufwändiger ist (zusätzliche
SQL-Abfrage) aber das sollte nicht ins Gewicht fallen.

Denn sonst musst Du immer explizit die Seiten benennen auf denen das anders
gehandhabt werden soll und das ist Fehleranfällig und aufwändig.

meine Gedanken so auf die schnelle.

gruß,
martin
_______________________________________________
TYPO3-german mailing list
TYPO3-german (AT) lists (DOT) netfielders.de
http://lists.netfielders.de/cgi-bin/...o/typo3-german
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
  #3  
Alt 09.08.2007, 09:20
Michael Meurer
Gast
 
Beiträge: n/a
Standard Re: [TYPO3-german]Verständnisfrage ifEmpty.cObject

Danke für deine Antwort, Martin.

An Conditions hatte ich in diesem Fall gar nicht gedacht.

Mein Gedanke als Nichtprogrammierer (heute ärgere ich mich ein wenig,
dass ich mich nicht schon früher damit beschäftigt habe...) war, ob es
nicht sinnvoller ist, erst den Standart zu definieren.
Und danach die Ausnahme abzufragen/überschreiben. Jetzt mache ich es ja
umgekehrt.

Wenn ich erst den Standard definieren würde, müsste ich dann nicht mit
"override" arbeiten?
Es wäre nett, wenn mir jemand dabei noch auf die Sprünge helfen könnte,
damit ich für andere Objekte Denkansätze bzw. Alternativen hätte.

Gruß
Michael
_______________________________________________
TYPO3-german mailing list
TYPO3-german (AT) lists (DOT) netfielders.de
http://lists.netfielders.de/cgi-bin/...o/typo3-german
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
  #4  
Alt 09.08.2007, 11:44
Martin Holtz
Gast
 
Beiträge: n/a
Standard Re: [TYPO3-german]Verständnisfrage ifEmpty.cObject

Hi Michael,

> An Conditions hatte ich in diesem Fall gar nicht gedacht.

Um das nochmal deutlich zu machen. Ich finde Deine Lösung ist für den Zweck
genau das richtige. Du kannt einfach und ohne Probleme auf beliebigen
Seiten besondere Inhalte einfügen und wieder löschen, ohne ins Typoscript
zu gehen. Das bedeutet das können auch deine Redakteure.

Jeder andere Weg würde bedeuten, Du musst ins Typoscript.

> Mein Gedanke als Nichtprogrammierer (heute ärgere ich mich ein wenig,
> dass ich mich nicht schon früher damit beschäftigt habe...) war, ob es
> nicht sinnvoller ist, erst den Standart zu definieren.

Das ist ne relativ philosophische Frage....

> Und danach die Ausnahme abzufragen/überschreiben. Jetzt mache ich es ja
> umgekehrt.

Ne - du hast zwei Prioritäten.
Priorität 1: Wenn auf der Seite Inhalt in der Spalte ist, zeig das an
Priorität 2: Ansonsten nimm den Inhalt von der Seite 5

In der Reihenfolge arbeitest Du es ab.

Ich denke es ist am sinnvollsten wenn aus dem Code klar wird, was passiert
Und das ist bei dir der Fall.

Ich würde sagen die Entscheidung ob du eine festdefinierte Liste hast und
das mit Conditions prüfst oder ob Du deine aktuelle Lösung verwendest
sollte davon abhängen wer was machen darf.

D.h. was darf der Redakteur selber machen. Muss der selber entscheiden
können ob der Default-Inhalt angezeigt wird oder der Inhalt der Seite
ODER
darf der Redakteur auf keinen Fall einen Einfluss darauf haben auf welchen
Seiten der Default-Inhalt angezeigt wird oder nicht.

Im ersten Fall nimmst du die aktuelle Lösung, im zweiten Fall musst Du via
Typoscript die Liste definieren und via IF oder Condition prüfen.

Die Performance des Systems würde ich nicht zu stark berücksichtigen. Im
normalfall sollte die eine zusätzliche Abfrage pro Tag (Caching!) nicht ins
Gewicht fallen...

> Wenn ich erst den Standard definieren würde, müsste ich dann nicht mit
> "override" arbeiten?

stimmt. Hätte ich jetzt nicht dran gedacht.
Aber das bedeutet, dass Du auch zwei Abfragen hast.
Auf die Performance hat das wohl keinen Einfluss.

> Es wäre nett, wenn mir jemand dabei noch auf die Sprünge helfen könnte,
> damit ich für andere Objekte Denkansätze bzw. Alternativen hätte.

Danke für "override" da hätte ich jetzt nicht so dran gedacht

Theoretisch sollte es auch möglich sein das ganze via Register zu lösen
LOAD_REGISTER aber sinnvoll ist es vermutlich für diesen Zweck nicht.

Ansonsten möchte ich dir das Kochbuch von Christian Trabold, Jo "Joey"
Hasenau und Peter Niederlag ans Herz legen. Das hat mir noch einige Dinge
näher gebracht.

schönen gruß,
martin
_______________________________________________
TYPO3-german mailing list
TYPO3-german (AT) lists (DOT) netfielders.de
http://lists.netfielders.de/cgi-bin/...o/typo3-german
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
  #5  
Alt 10.08.2007, 08:43
Michael Meurer
Gast
 
Beiträge: n/a
Standard Re: [TYPO3-german]Verständnisfrage ifEmpty.cObject

Hallo Martin,

danke für die ausführliche Antwort.

> darf der Redakteur auf keinen Fall einen Einfluss darauf haben auf welchen
> Seiten der Default-Inhalt angezeigt wird oder nicht.
>
> Im ersten Fall nimmst du die aktuelle Lösung, im zweiten Fall musst Du via
> Typoscript die Liste definieren und via IF oder Condition prüfen.

Das würde ich über eine Condition mit der Usergroup versuchen
>
> Die Performance des Systems würde ich nicht zu stark berücksichtigen. Im
> normalfall sollte die eine zusätzliche Abfrage pro Tag (Caching!) nicht ins
> Gewicht fallen...


Alles klar.

> Ansonsten möchte ich dir das Kochbuch von Christian Trabold, Jo "Joey"
> Hasenau und Peter Niederlag ans Herz legen. Das hat mir noch einige Dinge
> näher gebracht.


Ich habe das Buch.
Ich hab ein TS mit diesem Snippet in einem anderen Zusammenhang mal in
der Liste gefunden:
10.stdWrap.ifEmpty.cObject = CONTENT
10.stdWrap.ifEmpty.cObject
Dann hab ich im Kochbuch und in der TSRef nachgelesen, was die Objekte
können und hab mir das an meine Bedürfnisse angepasst. Ab und an
verzettel ich mich aber in der Philosophie (s. o. in deiner Antwort). ;-)

Trotzdem danke für den Hinweis.

Gruß
Michael


_______________________________________________
TYPO3-german mailing list
TYPO3-german (AT) lists (DOT) netfielders.de
http://lists.netfielders.de/cgi-bin/...o/typo3-german
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
 

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


Ähnliche Themen

Thema Autor Forum Antworten Letzter Beitrag
[TYPO3-german] verständnisfrage wann werden files im uplad gelöscht Martin Ficzel typo3-german@lists.netfielders.de 3 24.05.2007 20:51
[TYPO3-german] Kickstarter Checkboxen Verständnisfrage Robert Markula typo3-german@lists.netfielders.de 2 20.05.2007 19:30
[TYPO3-german] Problem mit cObject CONTENT Martin Fluer typo3-german@lists.netfielders.de 6 02.05.2007 07:48
[TYPO3-german] cObject Image - Standardeinstellung für Spalten ändern Joern Bock typo3-german@lists.netfielders.de 0 16.02.2007 12:15
[TYPO3-dev] TypoScript: stdWrap.ifEmpty but no stdWrap.ifIsset Oliver Hader typo3-dev@lists.netfielders.de 3 12.01.2007 18:10


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:50 Uhr.


Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74