mercoledì 20 febbraio 2008

Joomla 1.5: Guida Sviluppo Componenti

Riscontro un certo interesse riguardo allo sviluppo di componenti per Joomla 1.5. Si è già avuto modo di parlare dell'argomento in diverse occasioni, ma, come giustamente qualche lettore mi ha fatto notare, sarebbe utile avere un riferimento in un formato più 'compatto' di una serie di articoli sparsi sul blog.

Per cui ho pensato di fare cosa gradita (e se non fosse gradita ormai sarebbe troppo tardi per tornare indietro) realizzando una breve guida sull'argomento.

Nasce così la "Guida allo Sviluppo di Componenti per Joomla 1.5". L'idea era di fare un riassunto di quanto scritto finora sul blog relativamente a questo argomento, ma mi sono fatto prendere la mano e, rispetto agli articoli che potete trovare qui, alcuni aspetti sono stati trattati in modo molto più approfondito.

Se questo sia un bene o no è difficile dirlo. Certo sarebbe stato più facile creare uno 'scheletro' di componente e dire: "Un componente per Joomla 1.5 è fatto così: partite da questa struttura e personalizzate il tutto secondo le vostre esigenze". Però penso che spesso torni utile sapere non solo come si fa una cosa, ma anche perché si fa in un certo modo.

Non aspettatevi a questo punto un trattato sulla materia, l'impostazione della guida resta molto pratica: ho creato un componente di esempio cercando di spiegare passo passo la struttura dei diversi file che ne fanno parte.

Il componente di esempio è diverso da quello utilizzato negli articoli, per cui chi ha seguito l'argomento sul blog può leggere comunque la guida e viceversa.

La guida in formato pdf più il pacchetto di installazione del componente di esempio sono disponibili sul sito per il download.

Scarica la guida

Spero vi sia utile. Lasciate un commento se ci sono dubbi, domande o se trovate qualche inesattezza.

8 commenti:

Ingonline ha detto...

Anzitutto esprimo la mia profonda ammirazione nei confronti di chi, come te, condivide con gli altri le proprie conoscenze. Ho scaricato la guida e ho appena iniziato a consultarla.
Mi sono immediatamente imbattuto in uno spiacevole inconveniente:
Ho provato ad installare il pacchetto di prova e Joomla! restituisce il messaggio di errore "Impossibile trovare il pacchetto di installazione".
Cosa posso fare?

Grazie mille

Massimo ha detto...

Di solito quell'errore capita provando ad installare il componente su una versione di Joomla della serie 1.0. Ricordo che quanto scritto nella guida riguarda la creazione di componenti nativi per Joomla 1.5 (e versioni successive) e di conseguenza il componente di esempio può essere installato solo su questa versione.

Se non è questo il caso, allora forse si tratta di un problema più generale (hai provato ad installare altri componenti?), probabilmente legato all configurazione del tuo server. Per esempio verifica con il tuo host che Safe Mode sia off.

Ingonline ha detto...

Confermo che ho installato Joomla! 1.5 (c'è cmq il Legacy attivo, ma non penso sia un problema). In locale, funzionando sotto easy php, mi dice che non trova il pacchetto (con altre installazioni invece nessun problema). In remoto (hosting aruba) restituisce un errore MySql lunghissimo (con altre installazioni tutto ok)...


Grazie per la cortese attenzione

Massimo ha detto...

Per il problema in remoto: il fatto che arrivi a darti degli errori sql vuol dire che almeno il pacchetto di installazione viene trovato. Prova a togliere i dati di esempio dal file install.sql (cartella admin in pastdays.zip). Lascia solo questa parte

DROP TABLE IF EXISTS `#__pastdays`;

CREATE TABLE `#__pastdays` (
`id` INT NOT NULL AUTO_INCREMENT,
`year` char(4) NOT NULL ,
`month` char(2) NOT NULL ,
`day` char(2) NOT NULL ,
`description` TEXT NOT NULL,
PRIMARY KEY (`id`),
KEY `monthday` (`month`,`day`)
) DEFAULT CHARSET=utf8;

Se non risolvi ti invito a contattarmi privatamente tramite il modulo contatti su
questa pagina

Stefano GooseFish ha detto...

Ti faccio semplicemente i complimenti, la guida è ottimamente redatta e si lascia leggere facilmente.
Forse per far capire meglio tutti i riferimenti incrociati tra i vari componenti sarebbe utile una specie di diagramma di flusso su come funziona j!1.5.
Ciao
Stefano GooseFish

Massimo ha detto...

Ti ringrazio. Il diagramma di flusso sarebbe utile, ci penserò, ma è un lavorone :)

Giacomo ha detto...

Ho utilizzato, credo con profitto, la guida allo sviluppo di componenti joomla e, nel corso delle prove fatte, mi è capitato di utilizzare la funzione client (.../?option=com_pastdays) dopo aver eliminato la tabella dei dati. Con sorpresa ho notato che la procedura non riporta alcuna segnalazione di anomalia, visualizzando sono la scritta "No Events". C'è modo di intervenire sulla configurazione o altro in modo che il metodo "_db->loadObjectList()" possa catturare eccezioni sql?

Ringrazio anticipatamente

Giacomo

Massimo ha detto...

Giacomo,
Fai una ricerca di 'JDatabase' su api.joomla.org. Troverai questa e altre cose che ti serviranno prima o poi se vuoi sviluppare componenti per Joomla. Con la stessa ricerca anche su questo blog troverai un paio di articoli che possono esserti utili.

Posta un commento

Nota. Solo i membri di questo blog possono postare un commento.