Generate contenuto dinamico tramite chiamate rest.
Salve,
sono un nuovo utente drupal. Ho necessità di visualizzare degli elenchi di contenuti da un sito esterno tramite una serie di web service rest.
In pratica dovrei recuperare dal sito esterno un elenco categorie, mostrandole come una lista
selezionando una delle categorie dovrei recuperare una sotto lista di subcategorie
Selezionando una subcategoria dovrei recuperare una lista di articoli
Selezionando un articolo dovrei visualizzarne la scheda descrittiva.
Tutti le query indicate sopra devono avvenire tramite chiamate rest.
Essendo totalmente digiuno di Drupal (ma programmatore senior in PHP) qual è il miglio approccio per poter realizzare questo risultato.
Risposte
Ciao potresti dare un
Ciao potresti dare un occhiata a questi moduli:
https://www.drupal.org/project/wsclient
https://www.drupal.org/project/clients
oppure cimentarti nel creare un modulo ad hoc utilizzando librerie esterne come Guzzle (presente in Drupal 8) o utilizzare la funzione del core https://api.drupal.org/api/drupal/includes%21common.inc/function/drupal_... se sufficiente.
Ciao Maurizio! Grazie della
Ciao Maurizio! Grazie della risposta.
Avevo gia visto i moduli che mi hai indicato.
Il mio dubbio princiapale è che sia possibile realizzare interamente la funzionalità che mi interessa sviluppando un modulo ad hoc.
Se dovessi implemntare quello che mi serve in ambiente non drupal ci metterei un paio d'ore.
In ambiente drupal non ne ho idea.
Se fosse possibile realizzare il tutto tramite modulo ad hoc sarebbe più velode rispetto a usare diversi moduli presistenti cercando di farli funzionare assieme?
Se esistono moduli che
Se esistono moduli che incastrati assieme fanno tutto quello che ti serve, risparmi tempo nel dover assimilare il framework, riesci a manutenere (se i moduli sono tenuti aggiornati dai mantainer) meglio il sistema e probabilmente potrai fare evoluzioni / modifiche velocemente e attraverso una UI. Altrimenti o vai su un modulo custom (e potrebbe esserti utile per lavori futuri) o su una via "ibrida" (usi moduli ufficiali fin dove possibile e poi crei un "glue module", un modulo custom di piccole dimensioni che "completa" o perfeziona gli incastri).
La strada migliore dipende dal progetto e dallo stato dei moduli che trovi (se cerchi qualche funzionalità di nicchia spesso ti imbatti in moduli in stato alpha o dev che possono anche darti dei problemi).
Solitamente io seguo questa regola: passo in rassegna la disponibilità dei moduli (ti segnalo un sito molto utile simplytest.me in cui puoi lanciare installazioni temporanee Drupal per testare live le funzionalità dei moduli) facendo qualche prova. Se riesco a trovare un insieme abbastanza stabile e utilizzato vado per questa strada.
Se invece trovo:
1. molti moduli poco usati o non stabili
2. grosse lacune nelle funzionalità che offrono in base a quelle che mi servono
3. moduli molto complessi da configurare che fanno troppe cose in base a quello che mi serve
4. troppi moduli da mettere insieme per un task troppo circoscritto
allora valuto se customizzare in tutto o in parte.
In un caso come il tuo, dato che in generale la forza di Drupal (7 in questo caso) sta nel manipolare e visualizzare facilmente e in modo molto flessibile dati strutturati anche complessi ma **locali**, potrebbe non essere una cattiva idea buttar giù un modulo custom (composto in pratica da 3 routes o menù item) che estrae, fa il parsing e visualizza i risultati. Comunque un occhio ai moduli sopra lo darei prima di tutto.