Joomla Component Tool o Scaffold?


12

Ho creato un paio di plugin per Joomla 3.2 e recentemente ho avviato un componente per gestire l'affitto di appartamenti. Mi chiedevo se esiste un framework là fuori che aveva già creato la struttura di file / cartelle di base con i file necessari per far funzionare rapidamente un componente.

Non voglio ricreare la ruota ogni volta che avvio e i file e le classi necessari per far funzionare un componente hanno una struttura necessaria di base. Ce n'è già uno là fuori?

In caso contrario, quale componente Joomla di serie sarebbe un buon esempio su cui lavorare?

EDIT: Dopo aver visto le risposte, penso che forse "framework" è stata una cattiva scelta di termini. Non sto cercando nulla che abbia una base di codice propria. Stavo cercando qualcosa che abbia la struttura di file / cartelle che è comune a tutti i componenti di Joomla e necessaria per l'esecuzione, come il controller, la cartella delle visualizzazioni, la cartella dei modelli, ecc.

Quello che sto cercando non dovrebbe avere dipendenze che non fanno già parte del codice core di Joomla.

Ne ho trovato uno per joomla 1.5 che aveva tutti i file necessari e tutto quello che dovevi fare era rinominare le classi e i file in modo che corrispondessero al nome del componente e all'installazione e avresti avuto una vista di amministrazione di base, una vista del menu front-end, ecc. ... Spero che qualcuno là fuori ne abbia creato uno


Se stai cercando un impalcatura joomla, prova mmleoni.net/joomla-component-builder .

Risposte:


15

Uno strumento che ho usato in passato è Component Creator: http://www.component-creator.com/en/ .

Questo strumento ti consente di delineare gratuitamente una tabella (di più se ti registri per un pacchetto a pagamento) e altre informazioni generali sul componente stesso. È quindi possibile scaricare un file zip installabile per avviare il componente.

Per coloro che sono felici di saltare nel codice, questo può essere un metodo molto semplice per avviare lo sviluppo dei componenti.


Ci sono anche alcune estensioni che puoi installare in Joomla per aiutarti a sviluppare altri componenti Joomla. Un esempio di quello stile di supporto è questa estensione gratuita Easy Creator: http://extensions.joomla.org/extensions/miscellaneous/development/5908

Questo può essere un ottimo componente aggiuntivo per un ambiente di test combinato con uno strumento di compilazione in un unico pacchetto.


Esiste un altro strumento chiamato Joomla Component Generator per la generazione di componenti semplice e veloce. Ti permette di creare tavoli illimitati gratuitamente. Esistono pacchetti a pagamento ma non è necessario acquistare a meno che non siano necessarie più viste. Genera anche un file zip installabile per il download. Un test rivela i vantaggi di questo generatore. Dai un'occhiata al codice generato e al rientro.

http://www.componentgenerator.com/


Il creatore di componenti sembra promettente. Non vedo l'ora di provarlo.
Nestor Ledon,

Component Creator è davvero ottimo per ottenere un "framework" componente MVC installabile in pochi minuti.
fruppel,

Il creatore di componenti è bello e fornisce molto di ciò di cui ho bisogno anche per il livello gratuito.
pathfinder

8

Dopo aver scritto numerose estensioni per i clienti, mi sono ritrovato a seguire sempre gli stessi schemi. Per mantenere le cose ASCIUTTE, ho creato un "framework componenti" che astrae la maggior parte delle attività comuni che svolgo, ma finora è stato utilizzato solo internamente nella mia azienda. Manca molte funzionalità, ma fa il lavoro per quello che mi serve.

Ho detto questo per dire questo: sviluppare il proprio framework di componenti allo stesso modo. Prendi i punti in comune del codice che stai attualmente producendo e spostalo di un livello nella gerarchia OO nel suo livello che si trova tra il tuo componente e Joomla. Con questo approccio, si evita il problema "se il quadro fallisce" menzionato dal Ciad e lo si capisce molto meglio. Finora ha funzionato bene per me.


questo è praticamente quello che sto cercando. Ce n'era uno carino per joomla 1.5 che fa esattamente quello di cui stai parlando.
pathfinder,

1
Esiste un framework di componenti DRY che viene fornito con le versioni più recenti di Joomla, chiamato FOF (Framework on Framework), forse vuoi
dargli

Sono a conoscenza di FOF, ma non voglio usarlo, poiché è piuttosto pesante in termini di dimensioni e utilizza pratiche obsolete, come Singleton e Statics in MOLTI posti, che non mi piacciono.
Don Gilbert,

Ciao Don, ho fatto la stessa cosa e sono molto felice. Raccomando anche altri sviluppi per farlo.
Piero Marsilio,

5

Non mi piace raccomandare alcun tipo di "framework" per questo genere di cose per diversi motivi:

1) Il CMS ha un 'framework', e vorrei che se fosse necessario rendere 'più semplice' la scrittura delle estensioni, ci concentreremmo sul codice del framework principale invece di scrivere elementi di terze parti.

2) Se scrivi la tua estensione su un framework defunto sei piuttosto fregato.

3) L'utilizzo del core migliorerà idealmente gli aggiornamenti. Questo non è SEMPRE stato il motivo per cui ci sono quadri di terze parti per questo, ma più insistiamo sul fatto che ci si aspetta e ci aspettiamo che sia, più in realtà sarà. Se non ci concentriamo su di esso, non migliorerà mai.

-

Detto questo, in Joomla esiste un "Framework RAD" chiamato FoF (framework on framework). Non l'ho usato ma si dice che sia uno strumento per risparmiare tempo. C'è della documentazione qui:

https://www.akeebabackup.com/documentation/fof/getting-started-with-fof.html

Nota: FoF è INCLUSO nella distribuzione di Joomla 3.2, quindi non è necessario installarlo se l'estensione è per Joomla 3.2+.

Infine, se si desidera rimanere nel core e utilizzare le classi MVC core, attualmente è ancora incoraggiato a utilizzare le classi MVC legacy (cambierà non appena il nuovo MVC sarà completamente controllato). Una buona estensione di base da guardare è davvero il componente com_contact o com_banners. Sono abbastanza semplici e puoi raccogliere cose come JForm e modelli personalizzati in quel modo.


Sono d'accordo con @chad. Se vuoi davvero andare con un framework, allora ti suggerirei di provare FOF. È molto meglio di altri framework.
Ramesh Elamathi il

4

Consiglio vivamente Cook Self Service . Credo che ci sia un piccolo costo, ma ha generato circa l'85% della nostra componente di istruzione principale, risparmiando $ 1000 per iniziare, e il codice che ha generato era carino e pulito per la nostra modifica.


3

Hai dato un'occhiata al componente Joomla Hello World ? Non l'ho ancora visto, ma sembra che abbia i file minimi necessari per costruire un componente. Inoltre, poiché Joomla 3.2 include Framework on Framework (FOF), hai esaminato il componente di esempio FOF To-Do ? So di aver scritto un componente Joomla 3.x personalizzato nella mia lista di cose da fare e questi erano i due esempi che stavo pianificando di usare per iniziare il progetto. Speriamo che funzionino anche per te.


1
  1. Abbiamo sviluppato RB Framework, sopra Joomla. Lo usiamo per lo sviluppo dei nostri componenti (PayPlans, PayInvoice, ecc.) ( Https://github.com/readybytes/rbframework )

  2. Abbiamo un componente builder per lo stesso ( https://github.com/readybytes/component-builder )

Il framework sopra riduce molto lo stress di fare le stesse cose ancora e ancora.

Imp:

  1. La documentazione non è disponibile. Devi imparare dai componenti esistenti.
  2. È così potente che il nostro sito Web ha componenti personalizzati per blog e documentazione (sviluppati in un giorno).

Sarebbe fantastico nel readme se puoi dare solo alcuni suggerimenti su come usarlo. In questo momento non saprei da dove cominciare.
Valentin Despa,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.