Joomla.it Forum
Non solo Joomla... => Sviluppo => : jabber 25 Aug 2018, 08:58:40
-
Ciao a tutti,
mi sono creato un mio Form Field personalizzato ed ora vorre installarlo a sistema, in quest'ottica sto cercando di capire quale sia la migliore folder dove abbia un senso metterlo, tipo:
1) / plugins / fields
2) / libraries / regularlabs / fields (Esempio di soluzione di Regularlabs)
3) ??
Infatti nell'ottica di riusarlo anche in altri componenti e moduli (quindi lo voglio condividerlo tra più estensioni) mi chiedo quale sia la migliore scelta in termini di directory di installaizone.
-
quindi è codice php su un file
-
è una cartella, ci sono anche risorse js e css, oltre che la directoty "libs" dove ho messo librerie di supporto.
-
quindi devi fare in modo che quella cartella sia dentro un webserver.
Do per scontato che hai inserito nei file host le istruzioni per indirizzare le richieste nella lan
-
In joomla puoi solo installare estensioni che seguono determinate configurazioni che poi dovranno essere pacchettizzate, non puoi installare una cartella.
-
Probabilmente non mi sono espresso benissimo, però iniziare dalla genesi del file host, del webserver o della LAN mi sembra esagerato in quanto intendevo un'installazione su Joomla e non a livello di OS, pensavo fosse implicito ma ... bando alle ciance :)
Il mio compito è sviluppare estensioni varie e quindi vorrei condividere delle librerie (dove ci sono file PHP, JS e CSS) tra più componenti/moduli/plugin da me sviluppati, mi sembra una strada intelligente, fino a prova contraria.La condivisione non deve essere a livello di webserver, quindi tra più installaizoni di joomla, ma mi basta che le mie librerie condivise lo siano all'interno di una singola installaizone di joomla.
La domanda originaria del thread era appunto era, quale è la migliore posizione dove (*)"installarle" in modo da fare una cosa professionale ?
(*)
Si, è vero che non si possono "installare" librerie, però se si guarda la pratica, Regularlabs in qualche modo ha posizionato la sua libreria in"/libraries / regularlabs / fields ", oppure Akeeba ha copiato il suo framework RAD in "/libraries / fof".Infine, si è vero, l'installazione delle librerie non è possibile direttamente in quanto non esiste l'estensione di tipo LIBRERIA, ma comunque la posso copiare in concomitanza di una vera installazione (di un componente, modulo ecc) eseguendo uno script aggiuntivo che effettua una copia della mia libreria realizzando di fatto una vera installaizone.(ma non vorrei perdermi in questioni di semantica)
-
Forse giusebos ha risposto al post sbagliato.
Credo che in abbinamento ad un estensione sia l'unico modo.
-
@tomtomeight
Secondo te e parlando sempre a livello di librerie da condividere, è attuabile la seguente soluzione ?- installo la parte dinamica (file PHP)) in "/ libraries / NOME_AZIENDA / "
- installo la relativa parte statica (CSS,JS, img) in "/ media/ NOME_AZIENDA / "
E' la soluzione più vicina all'ottimo ? In assenza di linee guide precise stabilite nella documentazione, vorrei seguire le best practices.
Ti ringrazio in anticipo per l'aiuto.
-
Scusa ma installare una libreria da sola che senso ha, cioè se deve asservire a qualcosa meglio installarla insieme a quella cosa. Anche perché dove le metti le cartelle devono essere coerenti coi richiami asserviti.
-
ma per la realizzazione di un form, non era più semplice usare un estensione?
Ricorda che se non si sviluppa a livello MVC rischi solo di compromettere la sicurezza del sito.
-
@ tomtomeight
Scusa ma installare una libreria da sola che senso ha, cioè se deve asservire a qualcosa meglio installarla insieme a quella cosa. Anche perché dove le metti le cartelle devono essere coerenti coi richiami asserviti.
Si, la installo con l'installazione classica di un component/plugin/module, però una volta installata in un path specifico da decidere bene e con cognizione di causa, resterà sempre li in modo da soddisfare sempre i richiami asserviti.
-----------------
@ giusebosma per la realizzazione di un form, non era più semplice usare un estensione?
Vabbè, era un esempio, comunque ho tante classi PHP in file specifici e raggruppati gerarchicamente in folders, mi piacerebbe appunto ritrovarmele in Joomla come funzionalità da condividere (a mo di libreria esterna) tra le mie estensioni, la libreria possiede funzionalità a me utili e importanti.
Poi per l'MVC concordo, occorre rispettarlo, ma questo è a prescindere dal fatto che utilizzo librerie esterne o meno, in fondo dalla libreria io istanzio la classe e che poi uso, tutto all'interno di un flusso MVC.
-----------------
Per tornare di nuovo alla domanda originale del post, quale è la migliore posizione dove (*)"installarle" in modo da fare una cosa professionale ?
-
in joomla c'è la cartella libraries dedita a questo.
Credo devi pacchettizzarle, vedi come hanno pacchettizzato le altre librerie, per esempio quelle di regular labs , allediaframework o icagenda.
-
Se il tuo scopo è condividerle tieni presente che puoi farlo solo con tue estensioni e queste estensioni dovranno prevedere oltre l'esitenza anche le versioni delle librerie se presenti o da aggiornare.