Immagini banner diverse in base alla pagina visitata

23 contenuti / 0 new
Ultimo contenuto
Immagini banner diverse in base alla pagina visitata

Ciao a tutti, vi chiedo un suggerimento, in quanto dopo varie ricerche e prove non sono riuscito a raggiungere il mio obiettivo [niubbo].

Sul sito che sto sviluppando vorrei che le immagini che scorrono nel banner principale del sito possano essere definite in base alla pagina in cui mi trovo (quelle dei singoli negozi del centro commerciale).

Quindi se visito il negozio A, le immagini del banner dovranno essere quelle che io ho scelto per il negozio A e non le solite che scorrono nelle altre pagine.

E' possibile? Il blocco in cui visualizzo il banner è fatto con Views, quindi dovrebbe essere possibile gestire i filtri delle immagini da lì?

Sito in questione: www.centroponteregio.it

Grazie mille, ricambierò appena possibile il favore!

riporto da questa pagina
http://www.drupalitalia.org/node/15512#comment-56437

cck+views+views slideshow+context

ciao

Ciao, ho scaricato il modulo Context e gli altri che mi hai elencato.

Io lo slider l'avevo già creato con Nivo Slider, cambio la visualizzazione con Slideshow e sono a posto.

Potresti darmi un aiuto per come utilizzare Context? Per esempio devo definire un context per ogni negozio che viene aggiunto che dice:

condizione: percorso --> negozio_A
reazione: ??

Non capisco come posso dirgli "Visualizza le immagini caricate in questo "articolo" del tale tipo di contenuto SOLO sulla pagina A"

Ho provato a cercare qualche guida ma non riesco a venircene a capo, potresti darmi una mano?

Grazie!

the condor wrote:

Non capisco come posso dirgli "Visualizza le immagini caricate in questo "articolo" del tale tipo di contenuto SOLO sulla pagina A"

Ti spiego come ho fatto usando views( non ho fatto una slideshow ma cambia poco) - context e node reference (modulo reference) allora:

Crei due contenuti
Negozio
slide negozio ( per esempio )
Nel content Negozio oltre ai campi che hai crei un field node reference al contenuto Slide negozio. scegli tu il tipo di select che ti piace. Io ho messo select list .
Questo mette in relazione negozio e slide.

Ora alla views slide che hai creato devi fargli capire che c'è una relazione tra i due contenuti e cosa far visualizzare quindi

- Add relationship --- Content: Nid --- e cecchi "Require this relationship "
- Add Contextual filters---Nodo: Nid, do not use a relationship; seleziona nei filtri "Provide default value ", e quindi "Content id from URL"

non dovresti non toccare il resto della vista.

Salvi

Context:
dai nome descrizione e, nella condizione
Node type ---->negozio ( gli stai dicendo che quando sto su un contenuto negozio...)

Reactions
Blocks---->scorri nella colonna di destra fino alla vista della slide----selezioni e sulla colonna dei blocchi a sinistra clicchi su Add nel blocco che ti interessa (.....mi fai comparire questa vista in questo blocco!)

Crei due contenuti slideshow e negozio ( devi chiaramente creare prima la slideshow altrimenti il negozio non ha il contenuto da referenziare...l'ho fatto al volo ma se cambi la referenza e la porti nel contenuto slideshow ti basta cambaiare la vista...intanto vedi se va)

Fatto !!!!
Fammi sapere. A me gira bene.

Ciao

Quote:
Ho provato a cercare qualche guida ma non riesco a venircene a capo, potresti darmi una mano?

Grazie!

Prego ;)

Aggiornamento:
Mi sono reso conto che la vista-blocco cosi fatta è gia dinamica di suo e non è necessario usare context basta inserirele entrambi nella stessa regione;
però potrebero esserci dei problemi con la slide generale allora potresti nelle impostazioni del blocco della slideshow generale inserire di far vedere quella slide sempre escludendola nelle pagine riferite ai negozi scivendo negozio/* e per la slide negozio solo nel percoso negozio/*

ciao

Grazie mille dell'aiuto semplix, non è così facile capire come usare le relazioni e i filtri contestuali!

Proprio lì ho incontrato un problema:

Quote:

Ora alla views slide che hai creato devi fargli capire che c'è una relazione tra i due contenuti e cosa far visualizzare quindi

- Add relationship --- Content: Nid --- e cecchi "Require this relationship "
- Add Contextual filters---Nodo: Nid, do not use a relationship; seleziona nei filtri "Provide default value ", e quindi "Content id from URL"

In relationship non trovo Content:Nid, la cosa più vicina di significato è

Content revision: Contenuto
The revision ID of the content revision.

Ma non credo sia quella giusta, vero?

Mi manca questo passaggio, il resto lo so fare ma non so proprio se Content revision ID vada bene al mio scopo!

Grazie ancora per l'aiuto!

P.s.

Avevo provato a seguire una guida su internet per perseguire il mio obiettivo, purtroppo senza successo.

Consigliavano di usare la tassonomia quando si inserivano le immagini, in modo che quando inserisco delle immagini che devono andare solo nella slide di uno specifico negozio e le taggo col nome del negozio, la view automaticamente prende dall'url il nome del negozio e lo confronta con i termini del vocabolario, visualizzando nella slide solo le immagini taggate con quel termine.

Secondo voi è una buona soluzione? Sto cercando di capire in profondità le view, se qualche anima pia potesse spiegare come si fa a fare questa operazione (per il gusto della conoscenza) gliene sarei grato!!

The Condor

certo cheè una buona soluzione la tassonomia .

ci studio un po su e ti faccio sapere; vado a ricrearmi tutto slidehome e slidenegozi e tassonomia...vediamo ;)

ciao

Grande semplix! Io ci ho provato ma purtroppo non riesco ancora a capire i meccanismi base che stanno dietro a filtri contestuali e relazioni (e node reference), aspetto con trepidazione la tua soluzione! :)

Grazie dell'aiuto!

Risolto! Senza tassonomia.
Moduli
Views
Views slideshow
Reference
Pathauto

Vado veloce sulla creazione dei contenuti
Devi creare 3 Content type - Slide home - Negozio - Slide Negozio -
Slide Home: dovresti gia averla quindi non mi soffermo, dovrai solo escludere la visualizzazione nelle pagine negozio.
Negozio: basta che inserisci i field che ti interessano.
Slide Negozio: nel content type delle Slide Negozi devi inserire un nuovo field(campo), chiamalo field_referenza, node reference al content type Negozio, e dopo aver salvato sposti il field in alto, dopo il titolo.

A questo punto configuri il path del contenuto Negozi.
admin/config/search/path/patterns, vedi tu come è in italiano, nel Pattern for all Negozio paths scrivi
negozio/[node:title] . Salva.

Ora a differenza di quello che ho scritto nel post precedente, il node reference sta nella slide e non nel negozio.

Crei un Negozio e salvi - Stop.
Crei una slideshow negozio: nome consono a riconoscerlo; per esempio : se inserisci un negozio che si chiama Diamante gioielli - la slide sarà Slide Diamante gioielli...
gli assegni la referenza con il negozio
inserisci le immagini che desideri e stop.

Ora devi fare la vista:
Views- Add news - dai un titolo es: slide negozi
deselezioni crea una pagina e
selezioni crete block- dalla select list scegli slideshow of field e poi continue & edit

vai in relationship Add e cerchi "referenza" ( ricordi il field lo avevamo chiamto cosi ) e selezioni Content: Referenza (field_referenza) - reverse continua
selezioni Require this relationship e salva.

vai in contextual filters:
Content Nid - apply e nel menu che segue lasci do not use a relationship
selezioni il filtro Provide default value e dalla select list Content id from URL. salva

Vai in Field (campi) e cerchi il
Content: immagine
Appears in: node:slide_negozio.
selezioni e vai avanti
Dalla select list Relationship selezioni field_referenza deselezioni create a label e FONDAMENTALE dal menu a scomparsa MULTIPLE FIELD SETTINGS deselezioni Display all values in the same row.
Salva e la View è fatta!!!!

Ti sposti nel menu block: devi posizionare la views : slide negozi ( o come l'hai chiamata) nel blocco sotto la slide show iniziale, diciamo quella generale, ma che succede? quando vai in un negozio le slideshow per quel blocco sono due e quindi:

a fianco del blocco Slide home entri in configure e
Show block on specific pages
* All pages except those listed
inserisci
negozio/*
non te la fa vedere quando stai in quel percorso.

....FINITO!

P.s. Ho provato a gestire con la tassonomia usando Rules.
Creare un termine di tassonomia alla creazione del contenuto, con il nome (Title) del negozio, da associare poi alla slideshow è fatto non sono però riuscito ad associare quel termine al nodo appena creato ( chiaremnte utilizzando Rules) quindi ho lasciato perdere e ho continuato per la strada su descritta.
Chiaramente per chi avesse idee su come fare accetto volentieri consigli.

Credo che andrò a letto ;)

ciao

P.s 2. The condor non ti permettere a dire che non funziona !! ;)

Opzione 2 (forse anche meglio)

Lo scopo finale è avere il solo contenuto Negozio con i field dei dettagli : logo, via, telefono, ecc ecc e in piu la possibilità di inserire un gruppo di immagini da utilizzare come slideshow.
Tutto nel contenuto Negozio. ;)

Moduli necessari
Views
Views slideshow
Field group
Field group views
Views Field

Pathauto

Nel Content type Negozio - manage field - devi aggiungere, quindi, un gruppo
Add new group : Foto Slideshow ( o come credi ) - group_foto_slideshow - Fieldset
Add new field : Label Gruppo Foto Slide - field_group_slideshow - image.
Imposti il field image appena creato con il numero ecc ecc e salvi.

Nel Tab Manage Display ( credo gestione visualizzazione) Hidden nascondi il field appena creato.
Aggiornato.

Puoi creare un contenuto se vuoi, ma ancora non hai fatto la vista pero giusto per vedere come viene la maschera di inserimento ;)

Views:
Views- Add news - dai un titolo es: slide negozi in nodo
deselezioni crea una pagina e
selezioni create block- dalla select list scegli slideshow of field e poi continue & edit

vai in relationship Add e cerchi "group_slideshow" e continua poi
selezioni Require this relationship e salva.

vai in contextual filters:
Content Nid - apply e nel menu che segue lasci do not use a relationship
selezioni il filtro Provide default value e dalla select list Content id from URL. salva

Vai in Field (campi) e cerchi il
Content: Gruppo Foto Slide
selezioni e vai avanti
Deselezioni create a label e FONDAMENTALE dal menu a scomparsa MULTIPLE FIELD SETTINGS deselezioni Display all values in the same row.

salva la Views
Sposti i blocchi come sopra e hai finito .
Cosi facendo hai un contenuto sicuramente piu completo. Vedi tu quale ti resta piu comodo.

C'è però un problema in questo e nell'altro metodo che non sono riuscito a risolvere nemmeno cercando in rete:
Che succede se il negozio non ha foto? semplicemente rimane la slideshow vuota, e questo non è bello. Si potrebbe dire al blocco della slide principale : non visuallizzarti in questo blocco se il blocco è pieno fallo se falso; purtroppo avendo conoscenze elementari di Php non sono riuscito.

Spero ti faccia piacere anche questa soluzione.

ciao

Ciao semplix!!!

Ti sono gratissimo per il lavoro che hai fatto, soprattutto data l'ora tarda che hai fatto per postare il messaggio sul forum!!!

Peccato però che non funzioni :( non capisco, mi visualizza le immagini nel contenuto del negozio (http://www.centroponteregio.it/content/abacond-sas-amministrazioni-condo...) invece che metterle nel banner!

Ho eseguito alla lettera le tue istruzioni, ma non ho idea del perchè non funzioni :(

Per farti capire, nella view non mi visualizza nulla...

http://imageshack.us/photo/my-images/38/schermatadel20120327212.png/

Eppure dopo aver modificato il tipo di contenuto Negozio, sono entrato nel contenuto precedentemente inserito di tipo negozio e ho aggiunto delle immagini di prova..

Adesso per evitare di visualizzare quelle mega-immagini ho messo exclude from display nella view..

Grazie ancora per il supporto, ma proprio non riesco a capire come funzionano le relationships e i contextual filters!

Ho seguito il secondo metodo:

Quote:
vai in relationship Add e cerchi "group_slideshow" e continua poi
selezioni Require this relationship e salva.

vai in contextual filters:
Content Nid - apply e nel menu che segue lasci do not use a relationship
selezioni il filtro Provide default value e dalla select list Content id from URL. salva

Giusto per capire, qui drupal con le relazioni dice che verrà visualizzato il contenuto dello slideshow caricato dall'utente e tramite contextual filters restringe il campo alla pagina del contenuto??

Grazie ancora per il prezioso aiuto!

p.s. Per aiutarti a comprendere meglio, per adesso non ho escluso dalla visualizzazione della view le mega-immagini come ho scritto sopra, sono entrato nel tipo di contenuto e ho nascosto il Gruppo Slide Foto nella visualizzazione!

the condor wrote:
p.s. Per aiutarti a comprendere meglio, per adesso non ho escluso dalla visualizzazione della view le mega-immagini come ho scritto sopra, sono entrato nel tipo di contenuto e ho nascosto il Gruppo Slide Foto nella visualizzazione!

hai fatto bene! andava fatto quel passaggio l'avevo dimenticato ;)...

una cosa che non ho capito è se hai portato nella Regione , dal menu Block, il blocco creato dalla Views ? Se non l'hai fatto, perchè non vedi la slide funzionante nel pannello views per favore, fallo, devi passargli i parametri del nodo per visualizzarla.

Se puoi mi fai una stampa a video dei menu di settaggio di Relationionship- Contextual Filters- Field (relativo alle immagini, con il menu MULTIPLE FIELD SETTINGS aperto)?

fammi sapere.

ciao

P.S.Aggiornamento,
Guardando attentamente l'immagine della views che hai allegato :
Il campo Mostra deve essere settato su Campo( Field) e non View Nivo Slider !!!! come avevo detto "selezioni create block- dalla select list scegli slideshow of field e poi continue & edit"
Dovrebbe essere risolto.

semplix wrote:
una cosa che non ho capito è se hai portato nella Regione , dal menu Block, il blocco creato dalla Views ? Se non l'hai fatto, perchè non vedi la slide funzionante nel pannello views per favore, fallo, devi passargli i parametri del nodo per visualizzarla.

Si questo passaggio l'ho fatto, mettendo anche "visualizza solo nelle pagine negozi/*".

semplix wrote:
Se puoi mi fai una stampa a video dei menu di settaggio di Relationionship- Contextual Filters- Field (relativo alle immagini, con il menu MULTIPLE FIELD SETTINGS aperto)?

La proprietà Multiple field settings nelle proprietà del field Gruppo Foto Slide l'ho deselezionata come mi hai detto tu, ecco le immagini di configurazione di relationships e contextual filters:

http://imageshack.us/photo/my-images/820/scherm0.png/
http://imageshack.us/photo/my-images/822/scherm1.png/

semplix wrote:
P.S.Aggiornamento,
Guardando attentamente l'immagine della views che hai allegato :
Il campo Mostra deve essere settato su Campo( Field) e non View Nivo Slider !!!! come avevo detto "selezioni create block- dalla select list scegli slideshow of field e poi continue & edit"
Dovrebbe essere risolto.

Avevo già provato a metterlo come dicevi te, ma purtroppo non funzionava...mettevo Slideshow su formato e Fields su mostra, ma nell'anteprima della view non mi visualizza nulla :(

Non riesco a capire dove sbaglio, it's getting frustrating!

Grazie per l'aiuto prezioso ch emi stai dando semplix, spero di poter ricambiare in futuro!

the condor wrote:

Avevo già provato a metterlo come dicevi te, ma purtroppo non funzionava...mettevo Slideshow su formato e Fields su mostra, ma nell'anteprima della view non mi visualizza nulla :(

Ho comunque rimesso i valori come dicevi te, in modo da seguire esattamente la tua guida!

Qualche appunto :
1) non hai creato il percorso negozio/nomenegozio si vede dal sito
http://www.centroponteregio.it/content/abacond-sas-amministrazioni-condominiali
2) la vista deve essere fatta con il mostra campi(field)
non la vedi nel preview del modulo views perche devi passargli l'id del nodo come definito nei contextual filter.

***Potresti creare un utente con i permessi per fare tutto questo e te lo farei io.
Crei un ruolo con il mio nick - gli dai i permessi per modificare views e tutto il resto.
Crei un utente con il mio ruolo e mi invii e dati per il login. Appena fatto elimini utente e ruolo.

Per me stai saltando qualche passaggio. Non so che altro dire.

ciao

Quote:
Qualche appunto :
1) non hai creato il percorso negozio/nomenegozio si vede dal sito
http://www.centroponteregio.it/content/abacond-sas-amministrazioni-condo...
2) la vista deve essere fatta con il mostra campi(field)
non la vedi nel preview del modulo views perche devi passargli l'id del nodo come definito nei contextual filter.

1) L'ho creato, e gli ho detto che tutti i contenuti negozio devono essere nel percorso tipo negozi/* ma quando visualizzo il contenuto del negozio inserito mi va su content..
2) Ho rimesso la vista come consigli tu, però non funzia ancora..

Ti ho mandato un PM con i dati per l'accesso, grazie per l'aiuto sarei ancora in alto mare adesso!!

Ciao the condor,
non hai fatto due cose :
1) creare un pattern per il contnuto negozi come ti avevo detto :
A questo punto configuri il path del contenuto Negozi.
admin/config/search/path/patterns, vedi tu come è in italiano, nel Pattern for all Negozio paths scrivi
negozio/[node:title] . Salva.
2) Avevi messo la visualizzazione della slide_negozio nel percorso negozi/* infatti le slide si vedevano tutte e due.

Ora invece la slide_principale è ESCLUSA solo per le pagine negozio/*

ciao

Grandissimo semplix!! Adesso funziona perfettamente!! l'alias per i contenuti negozi lo avevo messo, ma mi sa che mi son dimenticato di salvare...lassiamo perdere valà!

Quindi l'unico errore vero e proprio è stato il nome sbagliato nell'esclusione delle pagine negozi/* anzichè negozio/*?

Ultimissima cosa, che secondo me può risultare utile anche ad altre persone alle prime armi come me: mi sto riguardando la views che mi hai consigliato per il banner, avrei dei dubbi che vorrei risolvere definitivamente:
1)Contextual filters --> Content: node id : se ho capito bene, prende dall'url di provenienza l'ID del nodo del contenuto in modo da sapere quali foto del gruppo slide da pubblicare nel banner deve prendere giusto
2) Relationships --> Gruppo Foto Slide:fid : purtroppo qui non mi è ben chiaro il concetto, potresti chiarirmelo per favore?

Ti ringrazio infinitamente, hai fatto un lavoro superbo!! Se vedo che nel forum chiedi qualcosa in cui posso aiutare ricambierò volentieri!!

Qualcuno potrebbe gentilmente darmi spiegazioni come ho richiesto nell'ultimo messaggio su contextual filters e relationships? Così non sarò costretto a frustrare altra gente in futuro per simili motivi, grazie :)

ciao the condor,

ci sono diverse richieste sul sito di chiarimenti sulle relazioni ti linko questa discussione

http://www.drupalitalia.org/node/8364

La relazione nella ultima views è un refuso della views con la referenza alla slide, in questo caso non serve ( se questo ti aveva fatto sorgere dei dubbi)

ciao