Qual è il modo migliore per progettare menu flessibili?

5

Mi piacerebbe avere un menu come questo in surfdome . Non intendo l'interfaccia utente ma la flessibilità di questo menu.

Proverò a spiegarlo.

Ho alcuni prodotti. Voglio abbinare questi prodotti con alcune categorie e avere più tipi di menu in base a queste categorie.

es. (in [] sono le categorie e in () sono i prodotti)

Un menu come

[Men] -> [Shoes] -> [Running] -> (Product1)
[Men] -> [Accessories] -> [Running] -> (Product2)
[Women] -> [Shoes] -> [Running] -> (Product3)
[Women] -> [Accessories] -> [Running] -> (Product4)

o

[Running] -> [Men] ->[Shoes] -> (Product1)
[Running] -> [Women] -> [Shoes] -> (Product3)
[Running] -> [Men] -> [Accessories] -> (Product2)
[Running] -> [Women] -> [Accessories] -> (Product4)

o

[Shoes] -> [Men] ->[Running] -> (Product1)
[Shoes] -> [Women] -> [Running] -> (Product3)
[Accessories] -> [Men] -> [Running] -> (Product2)
[Accessories] -> [Women] -> [Running] -> (Product4)

...

Ciò che penso potrebbe essere fatto con un tag system , ma vorrei chiedere se qualcuno sa come farlo?

    
posta pbaris 28.02.2013 - 08:49
fonte

2 risposte

2

sì, taggare e permutare i tag farà il lavoro.
dovresti chiederti, se hai bisogno di tutte le combinazioni, come per la tripletta singola Uomo-Scarpe-Running:

[Men] -> [Shoes] -> [Running]
[Men] -> [Running] -> [Shoes]
[Shoes] -> [Men] -> [Running]
[Shoes] -> [Running] -> [Men]
[Running] -> [Men] -> [Shoes]
[Running] -> [Shoes] -> [Men]

ma attenzione che se hai bisogno di 4 tag per descrivere un prodotto, il numero di combinazioni è probabilmente già proibitivo per un'interfaccia utente utile (4 fattoriale: 24 combinazioni per quella categoria di prodotto).

per ridurlo, potresti definire indicatori come top_level_category .

l'altra opzione è utilizzare più alberi, che ti daranno un controllo più diretto ma saranno più difficili da mantenere (specialmente se hai frequenti cambiamenti in prodotti e categorie)

    
risposta data 28.02.2013 - 09:22
fonte
2

Ho fatto qualcosa di simile con Apache Solr e le sue sfaccettature (sono più o meno come tag). È incredibilmente veloce per contare il numero di prodotti per qualsiasi combinazione.

Inizi ad assegnare utili sfaccettature ai tuoi prodotti. Quelli possono fondamentalmente venire in tre forme:

valore singolo: può avere una sola voce per un prodotto, come sesso o fascia d'età (bambino, bambino, adulto) o marca.

multi valore: può avere più voci per un prodotto come le descrizioni tecniche. Normalmente sono meno interessanti per i menu, ma in questo caso potrebbe essere interessante mostrare un prodotto in diversi assortimenti come "uomo" e "esterno" o altro.

gerarchico: un po 'complicato prima. Li usiamo per cose come car_brand - > car_model - > strutture built_year.

Puoi chiedere a Solr di iniziare con qualcosa del tipo: "la faccetta di genere deve essere" maschile "" e il recupero conta per tutte le altre sfaccettature e mostra quelle con un conteggio > 0 come opzioni di livello successivo. Ad un certo punto puoi farlo in tempo reale (e combinarlo con la ricerca full-text). Anche se per alcune aree memorizziamo i risultati di questa cache, la creazione di una struttura molto profonda può richiedere ancora del tempo. (Anche se è necessario memorizzare quei conteggi è ancora meglio farli attraverso questa interfaccia di query piuttosto che scrivere codice che faccia lo stesso conteggio manualmente.)

    
risposta data 28.02.2013 - 10:03
fonte

Leggi altre domande sui tag