[TYPO3-UG Dutch] Dynamische content op mainpage

Daniel Doesburg daniel at typo3-nl.eu
Thu May 14 15:18:00 CEST 2009


Arjan D schreef:
> @ Daniel
> 
> Het is me gelukt om de <p> tag uit de table te krijgen door middel van deze
> code in mijn TS.
> lib.parseFunc_RTE.externalBlocks.table.stdWrap.HTMLparser.removeTags = p
> 
> Het rare is dat die in de html nog wel de </p> tag zet wat natuurlijk geen
> correcte html is!
> Hier moet ik nog een oplossing voor vinden.
Die klacht kwam ik ook al tegen. Ben nog op zoek naar een goede oplossing.
Overigens is dit typoscript. Het zou ook met TSconfig moeten kunnen. En 
dan kun je het per pagina toepassingen.
> Nadeel van deze code is dat al zou ik ergens nog een tabel willen met die
> wel een <p> nodig heeft dan zou dit nu niet meer kunnen. (maar dit geld niet
> voor mijn site aangezien dit enige tabel is).
> 
> Verder was het mij gelukt om de class bodytext weg te halen met de code
> lib.parseFunc_RTE.nonTypoTagStdWrap.encapsLines.addAttributes.P.class >
Ook dit zou met TSconfig moeten kunnen. Maar dat heb ik zo niet paraat
> 
> Nadeel is dat hij hem dan door de hele site weghaald en dat is niet de
> bedoeling.
> 
> Ook heb ik gevonden hoe ik overbodige classes en commentlines kan
> verwijderen in mijn html waardoor de code wat schoner wordt :)
> 
> Dit heb ik gedaan met:
> lib.stdheader.stdWrap.dataWrap >
> lib.stdheader.1.headerClass >
> tt_content.stdWrap.dataWrap >
> config.disablePrefixComment = 1
> 
> Ben nu nog steeds op zoek naar een code die mij toestaat een class aan een
> bepaald element of div mee te geven.
Daarvoor heeft TYPO3 een truc. Op het tabje Algemeen (General) vind je 
een menu "Frame". Daar zit wat goedbedoeld voorbeeld materiaal in. Mijn 
advies is, gooi die leeg en maak je eigen. Dit is een wrap om het hele 
content element.
Dat gaat als volgt:
Onder het tabje Opties van de paginagegevens vind je als eerste 
schermpje TSconfig.
Zet daarin:
TCEFORM.tt_content.section_frame{
	removeItems = 1,5,6,10,11,12,20,21
	addItems {
		41 = opmaak 1
		42 = opmaak 2
		43 = opmaak 3
		44 = opmaak 4
	}
}

En dan in een typoscript template:
tt_content.stdWrap.innerWrap.cObject {
	41 = TEXT
	41.value = <div class="opmaak_1"> | </div>
	42 = TEXT
	42.value = <div class="opmaak_2"> | </div>
	43 = TEXT
	43.value = <div class="opmaak_3"> | </div>
	44 = TEXT
	44.value = <div class="opmaak_4"> | </div>
}

Let op dat je geen id's gebruikt. Want dan heb je gauw de kans dat je 
dezelfde id meedere keren op 1 pagina gebruikt.

Uiteraard weet jij veel betere namen te verzinnen dan opmaak 1, opmaak 
2, opmaak 3 en opmaak 4.
De namen (opmaak x) van het eerste blokje en die van het tweede blokje 
hoeven niet overeenkomen. De nummers wel.
Het eerste blokje is wat de redacteur ziet, het tweede is wat in de HTML 
source terechtkomt en dus moet overeenstemmen met je CSS.

Met vriendelijke groeten,

Daniel Doesburg



> Dus ga weer even googlen :)
> 
> Groeten,
> 
> Arjan
> 2009/5/14 Walrick <lists at globalhealingcircle.net>
> 
>> Hallo Arjan,
>>
>> Voor het geval het nu of in de toekomst ooit handig is een alternatieve
>> manier om de blokken agenda en geniet te verwijderen op andere pagina's
>> ipv het werken met twee verschillende template files:
>>
>> Je hebt nu in je eerste template staan:
>> <div id="agendablok"><!--###agendablok### begin --><span class="agenda">
>> Agenda</span>
>> <div id="genietblok"><!--###genietblok### begin -->
>>
>> Ongetwijfeld met ook nog marker voor het einde, zoals
>> <!--###agendablok### einde --> </div>
>>
>> Wat ik zou doen is de div binnen de marker plaatsen en in je TS
>> toevoegen middels een wrap.
>>
>> Je HTML wordt dan zoiets als:
>>
>> <!--###agendablok### begin --><div id="agendablok"><span class="agenda">
>> Agenda</span></div><!--###agendablok### einde -->
>>
>> Dan moet je natuurlijk nog die div om de output heen hebben.
>> subparts.agendablok < styles.content.getLeft
>> subparts.agendablok.wrap = <div id="agendablok">|</div>
>>
>> En je wilt dat dit alles alleen op bepaalde pagina's zichtbaar is:
>> [globalVar = TSFE:uid=16, TSFE:uid=14, TSFE:uid=17]
>> subparts.agendablok < styles.content.getLeft
>> subparts.agendablok.wrap = <div id="agendablok">|</div>
>> [else]
>> subparts.agendablok =
>> [END]
>>
>> Zomaar een alternatieve methode.
>>
>> Werkt alleen als het voldoende is om die div's weg te halen bij de
>> overige pagina's en je daar dus geen left and right content nodig hebt.
>>
>> Als je in alle gevallen meerdere typo3 "kolommen" wilt gebruiken maar
>> alleen op een andere plaats zal je wel met meerdere templates moeten
>> werken.
>>
>> Groet,
>>
>> Walrick
>>
>>
>> Arjan D wrote:
>>
>>> Verder snap ik het principe nu van de 4 kolommen die je kunt gebruiken.
>>>
>>> Wat nog wel een probleem is, zijn de foto's die naast de content op de
>>> andere pagina's zouden moeten komen.
>>> Ik snap nu wel hoe ik die op hun plek zou moeten krijgen maar hoe kan ik
>> nu
>>> de de 2 blokken op de mainpage laten verdwijnen.
>>> Die komen op de rest van de pagina's niet meer voor maar staan wel op
>> elke
>>> pagina in het template.
>>>
>>> <div id="agendablok"><!--###agendablok### begin --><span class="agenda">
>>> Agenda</span>
>>> <div id="genietblok"><!--###genietblok### begin -->
>>>
>>> Deze twee zouden dus eigenlijk op de rest van de pagina's moeten
>> verdwijnen.
>>> Is hier een oplossing voor of had ik dit op een of andere manier handiger
>>> kunnen doen?
>>>
>>> Groeten,
>>>
>>> Arjan
>> --
>> webmaster Global Healing Circle
>> www.globalhealingcircle.net
>>  _______________________________________________
>> TYPO3-UG-Dutch mailing list
>> TYPO3-UG-Dutch at lists.netfielders.de
>> http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-ug-dutch
>>


More information about the TYPO3-UG-Dutch mailing list