[TYPO3-UG Dutch] typoscript select met join (tt_news category in HMENU)
Rik Willems
rik at actiview.nl
Fri Feb 18 09:58:57 CET 2011
Hi Willem,
Maak van:
NO.stdWrap.cObject = COA
eens:
NO.stdWrap.cObject = CONTENT
Met CONTENT maak je daadwerkelijk een select uit de database, COA doet
dit niet (zie tsref.de). De rest heb ik overigens niet gecontroleerd...
Groet, Rik
Op 17-2-2011 21:13, W.S.M. Perquin [YniVerse] schreef:
> Lijst,
> Ik wil per HMENU item de specifieke categories hebben. Het menu ziet er als
> volgt uit in typo3:
> Menu1
> |- detailpagina
> |- pagina met tt_news plugin en 2 categories (genaamd SMOES1 en SMOES2)
> Menu2
> |- detailpagina
> |- pagina met tt_news plugin en 0 categories
> Menu3
> |- detailpagina
> |- pagina met tt_news plugin en 6 categories (genaamd SMOES1, SMOES2,
> SMOES3, SMOES4, SMOES5, SMOES6)
>
> De categorien hebben wel dezelfde naam, maar worden niet gedeeld met elkaar.
>
> Wat ik wil is dat er een listmenu wordt gegenereerd waarbij het tweede
> niveau de categorieën zijn.
> Dus:
> <ul>
> <li class=”unselected”>Menu1
> <ul>
> <li> SMOES1</li>
> <li> SMOES2</li>
> </ul>
> </li>
> <li class=”unselected”>Menu2</li>
> <li class=”selected”>Menu3
> <ul>
> <li> SMOES1</li>
> <li> SMOES2</li>
> <li> SMOES3</li>
> <li> SMOES4</li>
> <li> SMOES5</li>
> <li> SMOES6</li>
> </ul>
> </li>
> </ul>
>
> Delen typoscript heb ik nu gemaakt. Maar het samenvoegen verloopt alles
> behalve goed…….
> Het eerste stuk is gelukt:
> template.test = HMENU
> template.test.special = directory
> template.test.special.value = 11
> template.test.1 = TMENU
> template.test.1 {
> expAll = 1
> noBlur = 1
> wrap =<ul> |</ul>
> NO.wrapItemAndSub =<li class="unselected">|</li>||*||*|<li
> class="unselected">|</li>|
> NO.stdWrap.htmlSpecialChars = 1
> NO.stdWrap.field = title
> NO.ATagTitle.field = nav_title
> NO.ATagBeforeWrap = 1
> NO.linkWrap =<STRONG>|</STRONG>
> ACT< NO
> ACT = 1
> ACT.wrapItemAndSub =<li class="selected">|</li>||*||*|<li
> class="selected">|</li>|
> ACT.stdWrap.htmlSpecialChars = 1
> ACT.stdWrap.field = title
> ACT.ATagTitle.field = nav_title
> ACT.ATagBeforeWrap = 1
> ACT.linkWrap =<STRONG>|</STRONG>
> }
> Het stuk waarbij ik de tt_news categories ga ophalen lukt me niet.
> De query die ik heb bedacht om het mogelijk te maken gaat als volgt:
> SELECT tt_news_cat.*
> FROM tt_news_cat
> JOIN pages AS blogdir
> ON (blogdir.uid = tt_news_cat.pid)
> JOIN pages
> ON (pages.uid = blogdir.pid)
> WHERE pages.uid = 13
>
> Dat geeft netjes als resultaat in phpmyadmin de categories behorende bij de
> betreffende directory
>
> Het tweede gedeelte van het menu wordt dan:
> template.test.2 = TMENU
> template.test.2 {
> NO.stdWrap.cObject = COA
> NO.stdWrap.cObject {
> table = tt_news_cat
> select {
> selectFields= tt_news_cat.*
> join = pages AS blogdir ON (blogdir.uid =
> tt_news_cat.pid)
> join = pages ON (pages.uid = blogdir.pid)
> where.dataWrap = pages.uid = '{page:uid}'
> }
> renderObj = COA
> renderObj.wrap =<div class="news-archive-item">|</div>
> renderObj {
> 10 = TEXT
> 10.field = uid
> 10.dataWrap =<a
> href=index.php?id={TSFE:id}&tx_ttnews[cat]= |>
> 10.insertData = 1
> 20 = TEXT
> 20 {
> field = title
> wrap =<strong>|</strong>
> if {
> value.field = uid
> equals.data = GPvar:tx_ttnews|cat
> }
> }
> 21 = TEXT
> 21 {
> field = title
> wrap = |
> if {
> value.field = uid
> equals.data = GPvar:tx_ttnews|cat
> negate = 1
> }
> }
> 30 = TEXT
> 30.value =</a><br />
> }
> }
> }
>
> En dat geeft 0,0 als resultaat. Helemaal niets. Ik weet zeker dat ik het
> fout/niet goed doe, maar hoe dan wel? Iemand tips/voorbeeld?
>
> Willem
>
>
More information about the TYPO3-UG-Dutch
mailing list