• User Newbie

    Filtrare i contenuti della home page

    Salve, sto realizzando un sito con joomla. Ho bisogno di fare in modo che gli utenti che visitano il mio sito possano filtrare i contenuti che propongo per visualizzare nella home solo quelli che gli interessano.
    Mi spiego meglio: voglio che gli utenti possano selezionare un certo numero di argomenti di loro interesse e vedere visualizzati nella home solo gli articoli associati a quegli argomenti. Esistono plugin o tecniche per fare questa cosa con joomla?
    Grazie
    enrico


  • Moderatore

    Ciao Enrico e benvenuto nel Forum GT.
    Per selezionare gli "argomenti" gli utenti devono compiere una scelta/azione, ad esempio una selezione multipla di tag o categorie utili poi ad applicare il filtro: hai in mente qualcosa del genere?
    Si tratta di un'interazione forte, che l'utente compie soltanto se è realmente interessato ad applicare un filtro perché cerca qualcosa di specifico.
    Hai in mente qualcosa di diverso dalla selezione di tag tramite pulsanti?
    F.


  • User Newbie

    Ciao e grazie per la disponibilità.
    Mi rendo conto che quello che chiedo a joomla è una interazione utente-portale molto spinta e non sono nemmeno certo che il cms sia in grado di soddisfare questa mia esigenza, comunque ti spiego meglio: vorrei che gli utenti registrati del mio sito possano accedere ad un pannello personale nel quale, oltre a trovare tutte le caratteristiche del proprio account, abbiano a disposizione un pannello dove sono elencati tutti gli argomenti che il mio sito propone; nella mia idea l'utente registrato deve poter selezionare, anche semplicemente mettendo o togliendo un segno di spunta, gli argomenti che più lo interessano per vedere visualizzati sulla propria homepage solo gli articoli inerenti quegli argomenti.
    Ovviamente vorrei che tutto ciò fosse fattibile da front-end, senza l'intervento dell'amministratore.
    Le mie difficoltà sono prima di tutto nel trovare il sistema di filtrare i contenuti della HP a seconda delle scelte dell'utente e, poi, nel pannello di gestione di tali scelte.
    Come ho già detto sono cosciente della difficoltà dell'operazione e sarò grato a chiunque riuscirà a mettermi sulla strada giusta.
    Grazie.
    enrico


  • Moderatore

    Ciao Enrico.
    Innanzitutto ti chiedo per piacere di specificare:

    • la versione di Joomla! utilizzata;
    • le estensioni installate che potrebbero interferire con l'eventuale nuova modifica/estensione da implementare;
    • l'eventuale uso di un certificato SSL e qualunque altra caratteristica che pensi possa interferire.

    Esempi di estensioni che possono influire sono: JomSocial, CommunityBuilder, Virtuemart, K2, Kunena, ext. di lingua.
    Occorre capire se si può prevedere un funzionamento attivo solo su categorie e articoli del core di Joomla, quindi che funga da filtro e che ignori sostanzialmente gli elementi della pagina legati ad altre estensioni.

    Ti rassicuro sulle potenzialità di Joomla: ciò che chiedi è fattibile, al di là di quanto sia difficile da realizzare.

    Hai già implementato il "pannello personale" di cui parli?

    Voglio pensarci un po', vediamo se gli utenti del Forum GT forniscono qualche spunto interessante.
    Se intanto da parte tua e nostra ci sono idee e sviluppi condividiamoli qui. 😉

    Francesco


  • User Newbie

    Ciao Francesco
    Siamo nella condizione migliore perché siamo in fase di progettazione e tutto ci è permesso, molte delle estensioni che hai citato le conosco ma solo perché mi sono informato in rete riguardo le loro caratteristiche. Come ti ho detto siamo in fase di progettazione e non è detto che tali estensioni siano indispensabili; quello che mi interessa è, come ti ho spiegato, la possibilità di filtrare i contenuti della HP e la natura social del sito che permetta l'interazione tra utenti, non escluderei poi la possibilità di utilizzo della carta di credito.
    La versione di joomla installata è la 2.5 ma, considerato che il sito risiede su un hosting joomlahost ti dico dovrebbe essere perchè non sono riuscito a verificare con certezza.
    Essendo in fase di progettazione anche il pannello non esiste.


  • Moderatore

    Buon 2014, Enrico!

    Bene, ci concentriamo sul core e partiamo dalla 2.5 cercando di fare cose compatibili con la 3.2 (e quindi con la futura 3.5).
    Inviterei a ragionare su due strade diverse:

    1. ciascun utente applica un filtro alla stessa Home;
    2. per ciascun utente viene generata una Home diversa.

    Di primo acchito sono due approcci diversi, con la seconda soluzione che potrebbe essere più complessa e flessibile.

    Al momento sono impegnato su 3 fronti, appena ne chiudo uno aggiungo questo. Se intanto ti vengono idee aggiornaci. 😉

    Francesco


  • User Newbie

    Ciao, buon anno anche a te, a che punto sei con gli altri lavori?
    Non mi è chiaro cosa intendi quando dici "ciascun utente applica un filtro alla stessa Home"; quello che ho in mente io è quello che ti ho descritto nei post precedenti e che tu riassumi dicendo "ciascun utente viene generata una Home diversa".
    Mentre sei impegnato con gli altri lavori, se mi dai una dritta su dove trovarne di carini mi occupo della scelta del template che vorrei liquido che si adatti a pc, tablet e smartphone.
    Per ora ti saluto, a presto
    enrico


  • Moderatore

    Ciao Enrico.
    Mi era sfuggito l'aggiornamento con il tuo ultimo post, ti leggo solo ora.

    Per i template puoi cercare nel portfolio degli sviluppatori più noti: puoi partire da una ricerca su Google scrivendo "joomla template" e keywords simili. Prova anche nei marketplace come themeforest (ne esistono altri, ovviamente).

    Le due "strade diverse" hanno origine dalla considerazione che in Joomla una pagina è generata dal menu, che si tratti della homepage o di una pagina con funzionalità diverse (ad esempio l'elenco degli articoli di una categoria oppure una pagina di weblinks o ancora di contatti).

    Parliamo di generare pagine diverse per ciascun utente registrato.
    Nulla vieta che su un sito si creino due pagine alternative, del tipo dominio.com/home-pippo e dominio.com/home-pluto.
    Se accettiamo questo, ed è pacifico, possiamo immaginare che l'utente registrato "Alex" che effettui il login abbia un menu personalizzato in modo che la home corrisponda alla sua (nel senso di propria e personalizzata) home: dominio.com/home-alex.
    Per completare il quadro potremo anche provare a fare questa cosa: quando e solo quando l'utente Alex è loggato, dominio.com è reindirizzata a dominio.com/home-alex (ribadisco che vale solo per l'utente Alex loggato, e quindi valuterei la realizzazione con un redirect condizionale in php che prende il valore dal database ... è un'idea, magari se chiedi ad altri programmatori hai dieci soluzioni alternative).
    Andrebbe poi deciso se (1) rendere pubbliche e se (2) indicizzare le homepage dei singoli utenti, cioè quelle come la dominio.com/home-alex.

    Fatto questo, va creata un'estensione che fa due cose:

    1. accetta valori selezionati da un utente registrato tramite il frontend (cioè gli argomenti che ciascun utente sceglie per la propria homepage)
    2. per generare il menu dominio.com/home-utente

    È una gran bella estensione 😮 , non basta qualche ora per scrivere poche righe di codice.
    Non male però, m'intriga. :wink3:

    Francesco


  • User Newbie

    Ciao, solo alla trecentesima rilettura delle tue parole ho colto (forse) quello che volevi dirmi.
    Intendi dire che la home personalizzata la possiamo ottenere solo in seguito ad una azione volontaria dell'utente? E cioè se l'utente interviene sul menù generando una home nella quale vengono visualizzati solo i post riguardanti gli argomenti di interesse? Non è possibile fare in modo di riconoscere il visitatore al suo "arrivo" e proporgli quello che desidera vedere? Mi pare strano!
    Pendo dalle tue labbra o, meglio, dai tuoi polpastrelli.
    Sai quantificare, a spanne, quando potrai dedicarmi un po' di tempo? Nel frattempo sto lavorando su altri aspetti del progetto ma se tu riuscissi a quantificare approssimativamente i tuoi tempi posso organizzarmi meglio.
    Grazie, a presto
    enrico


  • Moderatore

    Ciao Enrico.
    Nell'ipotesi che ho fatto io l'utente compie la scelta una sola volta (la prima, a meno che non modifichi in seguito la sua scelta), poi sarà sufficiente che faccia il login.
    Ribadisco che questa è una possibilità su cui ragionare, non è l'unica e non è detto che sia la più adatta al caso tuo.

    Il tempo te lo dedico con piacere anche subito, per parlarne e confrontarci (c'è un malinteso: *aggiungiamo *l'argomento e studiamo il problema, non aggiungiamo l'estensione), magari provare a stabilire una traccia, ma non posso di certo realizzare il componente. Te lo dico perché se aspetti da me l'estensione completa, il rischio che l'attesa si protragga oltre il tempo di permanenza gentilmente concessoci su questa terra è decisamente elevato. :fumato:

    Scherzi a parte, si tratta di un componente di una certa complessità.
    La prima soluzione secondo me è più semplice e mi spiego. Immagina di avere nella pagina del profilo utente (frontend) un menu a tendina, di quelli a scelta multipla, che legge le categorie dal database. Ogni utente può selezionare dalla pagina del profilo una o più categorie. La homepage è fatta in modo da mostrare tutte le categorie, ma applica un filtro per il quale se e solo se trova la corrispondenza nel db tra la categoria e l'utente mostra nel flusso gli articoli di quella categoria. Il tutto ovviamente funziona soltanto se l'utente è loggato.

    Ora tu dirai: sì, ma devo modificare il template. Sì e no. Con un po' di creatività si risolve.
    Se tu ad esempio lo stream degli articoli lo crei con un modulo, il modulo te lo fai come più ti garba. A me, ad esempio, piace di dirgli che deve applicare un filtro per gestire la famosa corrispondenza tra categorie e utente, che poi è una select per il db.

    Francesco