Per semplicità useremo come esempio un estensione di tipo plugin. Per utilizzare il sistema di notifica dobbiamo agire su 3 fronti:
Nel manifest della nostra estensione dobbiamo inserire il tag updateserver in questo modo
<updateservers>
<server
type="extension"
priority="1"
name="System - Detector">
http://alikonweb.it/update/plg_system_detector_update.xml</server>
</updateservers>
Come potete notare la definizione del tag updateservers è molto semplice essendo composta da uno o più tag server. Andiamo ad analizzare nel dettaglio il tag server composto dai seguenti attributi:type, priority e name. L'attributo type ha come dominio collection ed extension, come forse avrete già potuto notare collection è usato per Joomla stesso quindi per il nostro scopo il valore da usare per l'attributo type è extension. L'attributo name deve avere come valore lo stesso utilizzato nel tag name del manifest dell'estensione. Nel tag server specifichiamo l'URL dell' manifest di aggiornamento, in pratica dove reperire le informazioni riguardanti l'aggiornamento: versione, data, ect della vostra estensione.
Per maggiori informazioni sui manifest leggete la documentazione ufficiale
<updates>
<update>
<name>System - Detector</name>
<element>detector</element>
<client>0</client>
<type>plugin</type>
<folder>system</folder>
<version>1.0.0</version>
<downloads>
<downloadurl type="full" format="zip">http://alikonweb.it/update/plg_system_detector0.zip</downloadurl>
</downloads>
<targetplatform name="joomla" version="2.5"/>
</update>
<update>
<name>System - Detector</name>
<element>detector</element>
<client>0</client>
<type>plugin</type>
<folder>system</folder>
<version>1.0.1</version>
<downloads>
<downloadurl type="full" format="zip">http://alikonweb.it/update/plg_system_detector1.zip</downloadurl>
</downloads>
<targetplatform name="joomla" version="2.5"/>
</update>
</updates>
Nidificati nei tag updates e update potete notare la stretta correlazione con i tag del manifest dell'estensione, mi riferisco ai tag name, element e folder è ovvio che tali valori devono essere identici tra loro. Un importante tag è il downloadurl che specifica dove reperire il package di aggiornamento dell'estensione.
Il metodo utlizzato da Joomla per i numeri di versione è il "PHP-standardized version number strings" qualcosa di molto familiare ad esempio la corrente versione di Joomla! è la 2.5.6 cioè major.minor.release, pertanto per le nostre estensioni dobbiamo usare lo stesso metodo. Nell'esempio precedente ho utilizzato nel tag version 1.0.0.
Avrete notato che nell'esempio di manifest di aggiornamento ci sono 2 tag update il primo fa riferimento alla versione 1.0.0 ed il secondo alla versione 1.0.1, praticamente ad ogni nuova versione della nostra estensione andremo ad aggiungere una nuova occorrenza del tag update al manifest di aggiornamento.
Dopo aver installato la nostra estensione "one click update" diciamo la versione 1.0.0 abbiamo predisposto il sistema di notifica degli aggiornamenti di Joomla ad ascoltare gli aggiornamenti anche della nostra estensione.
Supponiamo di rendere disponibile una nuova versione della nostra estensione diciamo la 1.0.1, per comunicarlo a tutte le installazioni Joomla della nostra estensione non dovremo fare altro che aggiungere una occorrenza del tag update nel manifest degli aggiornamenti.
Quando il webmaster si logga come admin vedra nell'apposita icona un numerino rosso (quel 5 nell'immagine in alto a destra) che indica il numero di estensioni per le quali sono disponibili aggiornamenti, un click e siamo nel menu Extension Manager Update selezioniamo la nostra estensione e clicchiamo su update ed il gioco è fatto.
Per maggiori informazioni sull'argomento fate riferimento alla guida ufficiale
&n
Comments (0)