[TYPO3-UG Denmark] Autooprettelse af sider i TemplaVoila

Johnny S. typo3 at pling.dk
Sat Nov 24 17:39:24 CET 2007


Hej Jan-Erik

Mange tak for det fine kodeeksempel - det var lige præcis sådan en 
løsning jeg var ude efter.

--
Johnny

Jan-Erik Revsbech skrev:
> Jeg kan anbefale at tage et kig på CORE Api dokumentation på typo3.org.
> Specielt i afsnittet om bruge af TCEMain klassen. Her er et lille kodestump
> som indsætter en ny side (som underside til siden $pid) og derefter
> indsætter et content element på den nye side:
>
> require_once(PATH_t3lib."class.t3lib_tcemain.php");
> $tce = t3lib_div::makeInstance('t3lib_TCEmain');
> $tce_data = array();	
> $tce_data['pages']['NEW_PAGE1'] = array('pid' => $pid,'title' => 'Titlen på
> min nye side','doktype' => '1','hidden' => 0 );
> $tce_data['tt_content']['NEW_CONTENT1'] = array('pid' => 'NEW_PAGE1',
> 'header' => 'Overskrift på content elementet', 'hidden' => 0, 'bodytext' =>
> '<p>Her er mit <strong>HTML</strong> indhold som skal stå på siden</p>',
> 'CType' => 'text');
> $tce->start($tce_data,array());
> $tce->process_datamap();
> $new_page_id = $tce->substNEWwithIDs['NEW_PAGE1'];
>
>
> Du skal nok læse Core API for at forstå eksemplet helt, men ved at gøre det
> på denne måde, så indsættes der automatisk de korrekt referencer i
> sys_refindex (men det er nu ikke derfor dit indhold ikke optræder på siden).
> Hvis ellers TemplaVoila er konfigureret til det, så vil tce_main klassen
> automatisk sørge for at alt indhold indsat på denne måder bliver indsat på
> siden.
>
> Prøv eksemplen og læs derefter Core API, så giver det meget mere mening (jeg
> uddyber det også gerne hvis nødvendigt).
>
> Mvh.
> Jan-Erik Revsbech
> MOC Systems
>
> Hej Johnny S. wrote:
>   
>> Hej folk
>>
>> Den korte version:
>> Hvordan kan man autooprette x-antal sider + content element på en side 
>> med TemplaVoila?
>>
>> Den lidt længere version:
>> Jeg er ved at lave en shop med extendedshop. Jeg har mine varenumre, 
>> varetekster osv i en csv-fil som jeg vil løbe igennem. Der skal oprettes 
>> en "Page" pr. varegruppe, tilføjes en "Productlist" på siden, samt 
>> tilføje produkterne til sidens extendedproducts
>>     
> (tx_extendedshop_products).
>   
>> Jeg har forsøgt den grimme måde direkte fra PHP, ved bare råt at 
>> indsætte tingene i tt_content, tt_pages og tx_extendedshop_products. Det 
>> kan godt lade sig gøre (selvom jeg er overbevist om, at dette absolut 
>> ikke den optimale måde), men mit tt_content-element bliver ikke tilføjet 
>> min TemplaVoila da der åbenbart mangler en hash i sys_refindex.
>>
>> Hvordan kan jeg strikke ovenstående sammen, så jeg ikke manuelt skal 
>> oprette 500 sider med 4000 varenumrer?
>>     


More information about the TYPO3-UG-denmark mailing list