Sviluppo estensioni per Joomla - progetto aperto alla community
-
@AlanT ha detto in Sviluppo estensioni per Joomla - progetto aperto alla community:
Ciao @jabba e grazie.
Se vuoi sporcarti le mani con qualcosa di concreto credo che potremo provarci.A disposizione per un call, quando vuoi, anche solo per conoscersci a fare due chiacchiere a riguardo
- Un plugin per la gestione degli opengraph è un potenziale candidato che avevo in mente anch'io. Bisogna dare un occhio perchè credo che Joomla 5 abbia introdotto delle funzionalità in questo senso ma non ho ancora controllato. Essendo un plugin che si deve integrare con i template occorre tener conto che non vada a cozzare contro qualcosa. Forse inizierei con qualcosa di ancora più semplice, ma comunque teniamola lì.
Nativamente si possono gestire solo gli structured data, gli open graph sono ad appannaggio del template/framework per il momento (o di plugin esterni). Nel mio piccolo ho fatto una mini guida per inserirli in un override, si può partire da qui per sviluppare il plugin che faccia poi questo, super semplice e senza fronzoli. Sarebbe una manna dal cielo.
-
Ho avuto diversi contatti con i ragazzi che si sono presi in carico il progetto J2Commerce. Ho parlato loro anche dell'aspetto fatturazione elettronica. Al momento è prematuro parlare di tutto, ma una delle cose che cercherò di fare anno prossimo è proprio curare una versione di J2Commerce ottimizzata per il mercato italiano. Sicuramente ne riparlerò anche qui.
-
Il componente e-commerce che ho realizzato per la mia azienda ha una parte che gestisce tutto l'aspetto della fatturazione. Posso convertire preventivi, ordini e fatture con un click, inviare tutto via mail con in allegato il pdf e generare gli xml delle fattura elettroniche. Email e pdf hanno un sistema di template interno al componente. Quindi potrei sviluppare una suite di fatturazione completa che si integra con Joomla e affiancargli vari plugin per importare i dati dai vari componenti esterni (come gli e-commerce Virtuemart, Hikashop, J2Commerce ma non solo) rendendolo quindi uno strumento scalabile e completo. Questo sarebbe un progetto sicuramente di tipo commerciale che richiede quindi un approccio di un certo tipo. Sviluppare il componente è la parte che mi preoccupa di meno perchè so di poterlo fare, è tutto il resto che mi preoccupa perchè so di non poter fare tutto da solo (solo gli ingenui credono di poter fare tutto da soli). Se nasceranno delle collaborazioni concrete sicuramente affronteremo anche questi aspetti. Perchè nascano delle collaborazioni concrete dobbiamo provare a fare qualcosa in team, ecco la ragione di questo thread aperto.
Questa parte penso sia fondamentale. L'e-commerce è un vero problema per Joomla al momento, soprattutto lato italiano perché manca tutto quello che riguarda la fatturazione elettronica e il bridge con i vari gestionali sul mercato (Danea, TeamSystem, ecc...). Parliamone anche con @mangi-1 che poco tempo fa aveva detto di essere disponibile ad aiutare (come host.it direi) nella realizzazione di qualcosa che riguarda l'e-commerce.
- Il plugin per il salvataggio dei campi aggiuntivi nelle versioni degli articoli non ho capito bene cosa sia
Anche qui possiamo parlarne con calma, ma fondamentalmente il discorso è questo: gli articoli di joomla hanno nativamente un sistema di versioning (si può settare di tenere fino a X versioni precedenti dell'articolo e ripristinarlo in caso di necessità). Questo sistema è ottimo, soprattutto se si lascia un sito in mano ai clienti, ma ha una pecca enorme: funziona solo per le parti "base" dell'articolo (titolo, testo, metadati) ma non funziona per i campi aggiuntivi. Quindi se io modifico il contenuto dei campi aggiuntivi e poi salvo viene salvata una nuova versione dell'articolo, ma con i campi aggiuntivi vecchi. Quello di cui c'è bisogno (e qui potremmo fare i buoni samaritani e donare il codice al progetto joomla) è fare in modo che le versioni degli articoli salvino (e poi nel caso ripristino) anche i valori dei campi aggiuntivi, oltre a titolo, descrizione, ecc...
- Gli altri progetti che suggerisci al momento sono un po' ambiziosi. Vedremo.
Certo, un passo alla volta. Intanto ho buttato giù qualche idea
Ancora grazie -
@jabba e @pstrada se volete possiamo provare a organizzare una call per parlarci a voce. Vi scrivo in privato.
PLUGIN PER LA GESTIONE DEGLI OPENGRAPH
Ho dato un'occhiata al tuo tutorial sugli opengraph @jabba, l'approccio con l'override template è quello che ho usato anch'io per diversi anni.
Se passiamo alla modalità "progettazione di un'estensione" dobbiamo cambiare modo di ragionare. Molti pensano che la parte più difficile nello sviluppare sia scrivere il codice, in realtà è cambiare punto di vista.
Il tuo ragionamento funziona fino a quando gestiamo gli articoli e le categorie di Joomla. Ma non è detto che un sito di Joomla sia fatto solo dagli articoli. Cosa succede per i componenti che vengono installati in un sito? Come si gestiscono gli opengraph per quelli? E come possiamo realizzare un plugin che vada a integrarsi anche con i componenti? TUTTI i componenti?Ho controllato e Joomla 5.2.2 ha davvero inserito la gestione degli opengraph nativa nel CMS. Purtroppo non ho trovato nessuna documentazione a riguardo, probabilmente non è stata ancora pubblicata, ma credo che se ne parlerà.
La gestione degli opengraph in Joomla 5.2.2 comunque avviene a livello di voce di menu, che effettivamente è il modo più intelligente per l'ecosistema di Joomla. Ogni voce di menu ha ora una tab dedicata alla gestione degli opengraph, in questo modo si possono gestire i meta tag per qualunque cosa. Non l'ho ancora testata, sono curioso di vedere come vengono gestiti i singoli articoli per le voci di menu categoria blog. Prevedo che si integri con le immagini preview ed estese dell'articolo, il che sarebbe fantastico.Questa scoperta aggiunge quindi altre domande ad un nostro ipotetico plugin da sviluppare. Cosa succede se un utente installa il plugin e poi configurare il sistema nativo di Joomla dal menu? Se non si prende in considerazione questo aspetto nasce un conflitto.
La nostra estensione "semplice, giusto per smanettare un po'" è già diventata più complicata, oltre che obsoleta dal momento che usare i sistemi nativi è sempre la scelta migliore. -
Sapevo che se ne parlava di metterli nel core ma non ho mai letto nulla di ufficiale, se hai trovato del codice forse è un test o qualcosa di deprecato (anche su github non ci sono riferimenti), si può provare a sentire su github o mastodon, per vedere se qualche dev può dare più info a riguardo.
Per quanto riguarda il tuo discorso sulle estensioni di terze parti come dici tu allarga l'orizzonte ma io appunto rimarrei sul "piccolo", che vuol dire il core di Joomla.
Un'estensione per settare i meta tag a livello menu/pagina in modo esterno (quindi da una view componente e non direttamente da voce di menu/articolo) in realtà esiste già e funziona più che bene (TAGZ), la mia idea era qualcosa di ancora più basic, direttamente all'interno dell'articolo stesso (o del menu, che effettivamente ti risolve il problema dei componenti di terze parti che non lo settano o delle pagine di raccordo, tipo le categorie o simili). Ovviamente ti "perdi" gli item che non siano articoli o voci di menu (esempio i prodotti di un catalogo di Virtuemart, ma in questo caso penso sia appannaggio dello sviluppatore dell'estensione gestirsi i suoi opengraph).
Per quanto riguarda i conflitti col sistema nativo si può risolvere come fa Tassos per i dati strutturati oppure Tagz stesso: tabula rasa di tutti i meta tag og nella head e poi inserimento dei propri
Ad ogni modo sentiamoci tra di noi, lasciamo questo post libero per idee di tutti -
Se parliamo della PA, sarebbe carino, se fattibile, lo sviluppo di un plugin/componente per accesso con SPID/CIE.
In passato c'era qualcosa per Joomla 3 ma poi mi sa che era abbandonato.
https://paswjoomla.net/joomla/attachments/article/900/manuale spid for joomla.pdf -
Ciao @webman e grazie.
Questo sarebbe bellissimo, ma anche estremamente complesso. Ci darò un'occhiata ma non posso promettere nulla.Vedo che l'applicativo originale funzionava su Joomla 3.7 e php 5.4 e non è stato più aggiornato da diversi anni: https://github.com/retepasw/simplespidphp-pasw
L'applicativo originale da cui era stato forkato invece è ancora mantenuto: https://github.com/simplesamlphp/simplesamlphp
Sarei curioso di sapere se i siti sui quali è stato implementato questo sistema di accesso con SPID (che quindi sono siti della PA) stanno ancora usando Joomla 3.7 e php 5.4 dal momento che non esiste la versione per Joomla 4 o 5. (Spero di no...)
-
@AlanT bellissima idea.
Mi piacerebbe prendere parte come apprendista, ma anche come tester.
Non ho mai provato a mettere le mani nel realizzare estensioni anche se mi sarebbe piaciuto.
Fai sapere. -
Se serve una mano mi rendo disponibile come tester.
-
Ciao @Gioacchino e @elmir
Continuate a seguire il thread, questo è un progetto nel lungo termine e ci vorrà un po' prima di avere qui il link per scaricare le estensioni, ma la fase di testing dopo sarà molto importante.
Se avete delle idee per delle estensioni riportatele pure. Più sono semplici, prima saranno pronte. -
@AlanT ha detto in Sviluppo estensioni per Joomla - progetto aperto alla community:
@pstrada anch'io metto la mia ignoranza da sviluppatore a disposizione, quindi tranquillo.
Dimmi qualcosa di più specifico su questo modulo CRUD. Un modulo può operare con il database se associato ad un componente. Però leggere e scrivere tabelle sul DB può avvenire solo nel contesto limitato stabilito dal componente, quindi mi serve capire meglio cosa vorresti fare. Non aver timore di spiegarla in termini molto sempliciAl momento lo metterei come ultima priorità, grazie a @jabba ho visto che hanno finalmente rispolverato il buon Fabrik, anche per j4/5. Questo è già un componente CRUD con il quale si possono realizzare applicazioni gestionali senza entrare in sviluppi specifici.