[TYPO3-UG Italy] Aggiungere un campo a tx_news

Federico Bernardin typo3list at bernardin.it
Tue Apr 16 12:11:45 CEST 2013


Ciao, non è proprio così.
I signal sono l'evoluzione degli hook e funzionano più o meno come gli hook.

La classe ObjectManager (TYPO3\CMS\Extbase\Object\ObjectManager), invece, permette di creare o accedere agli oggetti e quando deve crearli controlla se sono stati sovrascritti da altre classi tramite $GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects']['namespace dell'oggetto da estendere'] =
	array('className' => 'classe estendente');, in pratica è un xclassing un pò più raffinata.

Quello invece che chiede Michael è la possibilità di estendere le proprietà di un'entità, cosa che prima in estensioni piBase era abbastanza semplice.
Oggi per farlo serve un trucchetto (comunque valido) che viene usato da tx_news:
Crei un file che si chiama extend-news.txt e lo metti nella cartella Resources/Private del tuo plugin (è sì ne devi creare uno per estendere tx_news). Il file deve contenere Domain/Model/News come stringa.
Poi crei la tua entità in Classes/Domain/Model e la chiami News.php ed inserisci le proprietà ed i metodi set e get di ciascuna.

Ed il gioco è fatto.

In ogni caso per poter dare questo sarebbe utile che conoscessi un po di Extbase e Fluid.

Ciao
Federico

Il giorno 15/apr/2013, alle ore 15:02, Ivano Luberti <luberti at archicoop.it> ha scritto:

> Forse e' un discorso un po' complicato da fare via mail pero' mi viene da dire che anche in extbase esistono i signalSlot (non li ho ancora usati ma leggendo la documentazione mi sembra che si usi lo stesso principio)  e anche usando il subclassing, si puo' estendere la sottoclasse dell'estensione.
> Cioe' supponendo che l'estensione B, estende l'estensione A, se si vuole fare in modo che il comportamento di B ci sia ancora anche in presenza della nostra estensione C, si fa in modo che C estende B, invece che estendere A.
> 
> 
> Il 11/04/2013 15:37, Federico Bernardin ha scritto:
>> Ciao Ivano,
>> per solo una volta intendo la classica extends di php. Se io prendo un modello di extbase e lo estendo, in base a come è stato scritto il plugin posso fare in modo che le mie aggiunte vadano gestite, se però allo stesso tempo installo un secondo plugin che fa la stessa cosa, o vale uno o vale l'altro, in pratica lo stesso del vecchio xclass.
>> 
>> Ciao
>> Federico
>> 
>> Il giorno 11/apr/2013, alle ore 14:18, Ivano Luberti <luberti at archicoop.it> ha scritto:
>> 
>>> Il 11/04/2013 09:36, Federico Bernardin ha scritto:
>>> 
>>> 
>>>> Le estensioni extbase possono essere estese "ma solo una volta" e quindi non ci possono essere diverse estensioni che aggiungono campi personalizzati, oltre al fatto che dipende poi da come è stato costruito il codice.
>>> Scusa Federico, cosa intendi di preciso con "solo una volta"? O meglio esiste un link a qualche documento che spiega questa cosa? Giusto per non farti scrivere un romanzo......
>>> 
>>> 
>>> -- 
>>> ==================================================
>>> dott. Ivano Mario Luberti
>>> Archimede Informatica societa' cooperativa a r. l.
>>> Sede Operativa
>>> Via Gereschi 36 - 56126- Pisa
>>> tel.: +39-050- 580959
>>> tel/fax: +39-050-9711344
>>> web: www.archicoop.it
>>> ==================================================
>>> 
>>> _______________________________________________
>>> TYPO3-UG-Italy mailing list
>>> TYPO3-UG-Italy at lists.typo3.org
>>> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-ug-italy
>> _______________________________________________
>> TYPO3-UG-Italy mailing list
>> TYPO3-UG-Italy at lists.typo3.org
>> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-ug-italy
>> 
> 
> -- 
> ==================================================
> dott. Ivano Mario Luberti
> Archimede Informatica societa' cooperativa a r. l.
> Sede Operativa
> Via Gereschi 36 - 56126- Pisa
> tel.: +39-050- 580959
> tel/fax: +39-050-9711344
> web: www.archicoop.it
> ==================================================
> 
> _______________________________________________
> TYPO3-UG-Italy mailing list
> TYPO3-UG-Italy at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-ug-italy



More information about the TYPO3-UG-Italy mailing list