Zum Inhalt springen

Bedingung mit TYPOSCRIPT - TEMPLA VOILA

Erstellt am 26. Juni 2008 · Noch keine Antworten

Tags: Frage

klognfurta ·

Hallo,

ich hab vor einiger Zeit eine Bedingung für TYPO3 geschrieben:

wenn der User in die rechte Spalte in der entsprechenden Sprache was reinschreibt, soll der User Content angezeigt werden - sonst der Default Content.

Sieht so aus und funktioniert.

temp.c200-rechts = COA_INT
temp.c200-rechts {
    # User Content
    10 = COA
    10 {
      if.isTrue.numRows {
        table = tt_content
        select {
          where = colPos = 2
          languageField = sys_language_uid
        }
      }
      10 < styles.content.getRight
      10.wrap = |
    }
  
  # Default Content
  20 = COA
  20 {
    if.isFalse.numRows < styles.content.getRight
    1 = CONTENT
    1.stdWrap.postUserFunc = tx_akronymmanager_pi1->check               
    1.table = tt_content
    1.select.orderBy = sorting
    1.select.pidInList = 93
    1.s

Jetzt mache ich eine Seite mit Templa Voila - ich komm grundsätzlich recht gut damit zurecht.

Das gleiche Problem mit TV bin ich folgendermaßen angegangen:

1. Die entsprechende Spalte mappen, Editing Type: Content Elements. Im Backend heißt die entsprechende Spalte jetzt "TV-SP-1" im Standard Seitenmodul und "CONTENT RIGHT" im TV Seitenmodul.
2. in der XML-TemplaVoilà Datenstruktur habe ich

	10= RECORDS
	10.source.current=1
	10.tables = tt_content
	10.wrap = <!--TYPO3SEARCH_begin--> | <!--TYPO3SEARCH_end-->

ersetzt mit

10 = COA_INT
10 {
    # User Content
    10 = COA
    10 {
      if.isTrue.numRows {
        table = tt_content
        select {
          where = colPos = 1
          languageField = sys_language_uid
        }
      }
	10= RECORDS
	10.source.current=1
	10.tables = tt_content
	10.wrap = <!--TYPO3SEARCH_begin--> | <!--TYPO3SEARCH_end-->
    }
  
	# Default Content
	20 = COA
	20 {
		if.isFalse.numRows < styles.content.getTV-SP-1
		1 = CONTENT            
		1.table = tt_content
		1.select.orderBy = sorting
		1.select.pidInList = 38
		1.select.languageField = sys_language_uid
		}
	}

Kann die Abfrage if.isTrue.numRows mit TV noch funktionieren?

Wie kann ich if.isTrue.numRows und if.isFalse.numRows < styles.content.getTV-SP-1 für TV machen?
Kann ich mit diesem Ansatz überhaupt weiterkommen?

Besten Dank