Prodotti

Di seguito sono documentate:

In aggiunta a queste, nelle pagine product.html e share.html si possono usare anche le variabili comuni a tutte le pagine.

product.html

Pagina con i dettagli di un prodotto.

var (

    // Prodotti accessori.
    accessories []Product

    // Numero di colonne su cui visualizzare i prodotti accessori.
    accessoriesColumns int

    // Tutti i breadcrumbs, uno per ogni reparto pricipale del prodotto, da
    // quello principale a quello più profondo.
    allBreadcrumbs [][]Breadcrumb

    // Attributi del prodotto.
    attributes []Attribute

    // Reparti da quello principale a quello più profondo in cui si
    // trova il prodotto.
    breadcrumbs []Breadcrumb

    // Pulsante per aggiungere il prodotto al carrello.
    buttonAddToCart HTML

    // Pulsante per aggiungere il prodotto alla lista dei desideri.
    buttonAddToWhishList HTML

    // Codice del prodotto.
    code string

    // Reparto del prodotto.
    department LinkedText

    // Sconto rispetto al prezzo di listino.
    discount Discount

    // Codice EAN13 della referenza primaria.
    ean string

    // File allegati scaricabili.
    files []File

    // Identificativo del prodotto.
    id int

    // Immagine larga.
    image ProductImage

    // Indica se è disponibile e può essere ordinato.
    isAvailable bool

    // Codice ISBN13 della referenza primaria.
    isbn string

    // Indica se il prezzo è scontato.
    isDiscounted bool

    // Indica se è in vendita.
    isForSale bool

    // Indica se la quantità in magazzino è maggiore di zero. Se il prodotto
    // ha più referenze allora ha sempre valore falso.
    isInStock bool

    // Indica se è una novità.
    isNewRelease bool

    // Indica se è in pre-ordine.
    isPreOrder bool

    // Referenze del prodotto.
    items []Item

    // Prezzo di listino.
    listPrice Price

    // Descrizione lunga.
    longDescription HTML

    // Meta tag <meta property="og:image"> che indica a siti come Facebook
    // l'immagine da utilizzare per la condivisione.
    // Da inserire tra <head> e </head>.
    metaOGImage HTML

    // Messaggio che informa il cliente che può richiedere un preventivo sul
    // prodotto con una quantità minima.
    minQuoteMessage HTML

    // Descrizione aggiuntiva.
    moreDescription HTML

    // Nome del prodotto.
    name string

    // Percentuale delle tasse.
    percentTax Decimal

    // Messaggio che informa il cliente che il prodotto è pre-ordinabile.
    preOrderMessage string

    // Prezzo di vendita.
    price Price

    // Produttore.
    producer Producer

    // Messaggio che informa il cliente che il prodotto è in promozione.
    promotionMessage HTML
 
    // Campo dove indicare la quantità da aggiungere al carrello.
    quantity HTML

    // Rating delle recensioni da 0.0 a 5.0.
    reviewRating Decimal

    // Recensioni.
    reviews []Review

    // Numero totale di recensioni.
    reviewsCount int

    // Data stimata per la spedizione. Utilizzabile sono se il prodotto non
    // ha varianti ed ha una sola referenza. Se il prodotto è disponibile in
    // magazzino allora data è il giorno seguente, altrimenti vengono
    // aggiunti tanti giorni quanti sono i giorni di riordino dai fornitori.
    shippingDate string

    // Descrizione breve.
    shortDescription HTML

    // Prodotti simili.
    similar []Product

    // Numero di colonne su cui visualizzare i prodotti simili.
    similarColumns int

    // Condivisione sui social.
    socialSharing HTML

    // Informa il cliente di eventuali errori nell'aggiunta del prodotto nel
    // carrello.
    statusMessage HTML

    // Miniature delle immagini del prodotto.
    thumbnails Thumbnails

    // Codice UPC della referenza primaria.
    upc string

    // URL del prodotto nella lingua corrente.
    url string

    // Varianti.
    variants []Variant

)

type ProductImage

Il tipo ProductImage rappresenta una immagine di un prodotto.

type ProductImage struct {

    // Immagine.
    Image

    // Indirizzo della corrispondente immagine di zoom.
    ZoomImageURL string

}

Un valore di tipo ProductImage può essere direttamente visualizzato nell'HTML:

{{ image }}

in quanto su un valore di tipo ProductImage si può chiamare il metodo HTML.

HTML

func (image ProductImage) HTML() string

HTML ritorna l'immagine in un formato adatto per essere mostrato in una pagina HTML.

type Thumbnails

Il tipo Thumbnails rappresenta le miniatura delle immagini di un prodotto.

type Thumbnails []Thumbnail

Un valore di tipo Thumbnails può essere direttamente visualizzato nell'HTML:

{{ thumbnails }}

in quanto su un valore di tipo Thumbnails si può chiamare il metodo HTML.

HTML

func (t Thumbnails) HTML() string

HTML ritorna le miniature in un formato adatto per essere mostrato in una pagina HTML.

type Thumbnail

Il tipo Thumbnail rappresenta una miniatura di una immagine di un prodotto.

type Thumbnail struct {

    // Immagine.
    Image

    // Indirizzo della corrispondente immagine larga.
    LargeImageURL string

    // Indirizzo della corrispondente immagine zoom.
    ZoomImageURL string

}

type Attribute

Il tipo Attribute rappresenta un attributo di un prodotto.

type Attribute struct {

    // Identificatore.
    ID int

    // Nome.
    Name string

    // Valori.
    Values []AttributeValue

}

type Attribute

Il tipo Attribute rappresenta un attributo di un prodotto.

type Attribute struct {

    // Identificatore.
    ID int

    // Nome.
    Name string

    // Valori.
    Values []AttributeValue

}

type AttributeValue

Il tipo AttributeValue rappresenta un valore di un attributo.

type AttributeValue struct {

    // Descrizione.
    Description string

    // Icona.
    Icon AttributeValueIcon

    // Identificatore.
    ID int

    // Nome.
    Name AttributeValueName

    // Indirizzo.
    URL string

}

type AttributeValueIcon

Il tipo AttributeValueIcon rappresenta l'icona di un valore di un attributo. Può essere un colore oppure una immagine.

type AttributeValueIcon struct {

    // Colore in formato esadecimale.
    Color string

    // Immagine.
    Image Image

}

Un valore di tipo AttributeValueIcon può essere direttamente visualizzato nell'HTML:

{{ icon }}

in quanto su un valore di tipo AttributeValueIcon si può chiamare il metodo HTML.

HTML

func (icon AttributeValueIcon) HTML() string

HTML ritorna l'icona in un formato adatto per essere mostrato in una pagina HTML.

type AttributeValueName

Il tipo AttributeValueName rappresenta il nome di un valore di un attributo.

type AttributeValueName struct {

    // Nome.
    Value string

}

Un valore di tipo AttributeValueName può essere direttamente visualizzato nell'HTML:

{{ name }}

in quanto su un valore di tipo AttributeValueName si può chiamare il metodo HTML.

HTML

func (name AttributeValueName) HTML() string

HTML ritorna il nome in un formato adatto per essere mostrato in una pagina HTML.

type Item

Il tipo Item rappresenta una referenza di un prodotto.

type Item struct {

    // Pulsante per aggiungere la referenza al carrello, se la giacenza
    // è maggiore di zero oppure la referenza è comunque ordinabile.
    ButtonAddToCart HTML

    // Sconto rispetto al prezzo di listino.
    Discount Discount

    // Codice EAN13.
    EAN string

    // Immagine.
    Image LinkedImage

    // Codice ISBN13.
    ISBN string

    // Indica se è in vendita.
    IsForSale bool

    // Prezzo di listino.
    ListPrice Price

    // Quantità massima ordinabile.
    MaximumOrderQuantity Decimal

    // Quantità minima ordinabile.
    MinimumOrderQuantity Decimal

    // Opzioni.
    Options []Option

    // IVA in percentuale.
    PercentTax Decimal

    // Prezzo.
    Price Price

    // Prezzi per quantità.
    Prices []PriceTier

    // Quantità da aggiungere al carrello. È vuoto se la
    // giacenza è zero o la referenza non è comunque ordinabile.
    Quantity HTML

    // Giorni necessari per il riordino se non è subito disponibile.
    ReorderDays int

    // Codice di magazzino.
    SKU string

    // Data di spedizione.
    ShippingDate string

    // Quantità disponibile.
    Stock Decimal

    // Codice UPC.
    UPC string

    // Peso.
    Weight Decimal

}

type Variant

Il tipo Variant rappresenta una variante.

type Variant struct {

    // Nome.
    Name string

    // Opzioni.
    Options HTML

}

type Option

Il tipo Option rappresenta una opzione di una variante.

type Option struct {

    // Nome.
    Name string

    // Nome della corrispondente variante.
    Variant string

}

type File

Il tipo File rappresenta un file allegato ad un prodotto.

type File struct {

    // Descrizione.
    Description LinkedText

    // Dimensione in KB.
    Size string

}

type Product

Il tipo Product rappresenta un prodotto.

type Product struct {

    // Pulsante per aggiungere il prodotto al carrello.
    ButtonAddToCart HTML

    // Pulsante per aggiungere il prodotto alla lista dei desideri.
    ButtonAddToWishList HTML

    // Pulsante per rimuovere un prodotto dalla lista dei desideri,
    // disponibile solo nella pagina wish-list.html
    ButtonRemove HTML

    // Codice del prodotto.
    Code string

    // Reparto principale del prodotto.
    Department string

    // Sconto rispetto al prezzo di listino.
    Discount Discount

    // Identificatore del prodotto.
    ID int

    // Indica se è in vendita.
    IsForSale bool

    // Indica se è una novità.
    IsNewRelease bool

    // Indica se è in pre-ordine.
    IsPreOrder bool

    // Immagine larga. Potrà essere visualizzata in dimensione piccola o
    // media se diversamente indicato nel gestionale.
    LargeImage LinkedImage

    // Prezzo di listino.
    ListPrice Price

    // Immagine media. Potrà essere visualizzata in dimensione piccola o
    // larga se diversamente indicato nel gestionale.
    MediumImage LinkedImage

    // Messaggio che informa il cliente che può richiedere un preventivo sul
    // prodotto con una quantità minima.
    MinQuoteMessage HTML

    // Nome.
    Name LinkedText

    // IVA in percentuale.
    PercentTax Decimal

    // Posizione del prodotto nell'elenco a partire da uno. Utilizzato in
    // particolare nei prodotti più venduti.
    Position int

    // Messaggio che informa che il prodotto è in pre-ordine.
    PreOrderMessage HTML

    // Prezzo di vendita.
    Price Price

    // Produttore.
    Producer string

    // Logo del produttore.
    ProducerLogo LinkedImage

    // Rating delle recensioni da 0.0 a 5.0.
    ReviewRating Decimal

    // Descrizione breve.
    ShortDescription HTML

    // Codice di magazzino della referenza primaria.
    SKU string

    // Immagine piccola. Potrà essere visualizzata in dimensione media o
    // larga se diversamente indicato nel gestionale.
    SmallImage LinkedImage

}

type Review

Il tipo Review rappresenta una recensione di un prodotto.

type Review struct {

    // Autore.
    Author string

    // Codice.
    Code string

    // Contenuto.
    Content string

    // Data.
    Date string

    // Rating da 0.0 a 5.0.
    Rating Decimal

    // Sommario.
    Summary string

}

search.html

Consente di eseguire una ricerca avanzata sui prodotti e di visualizzarne i relativi risultati.


var (

    // Percorso di ricerca. Comprende i filtri applicati nella ricerca.
    breadcrumbs []Breadcrumb

    // Numero di colonne su cui visualizzare i prodotti.
    columns int

    // Contenuto della pagina.
    content HTML

    // Numero totale di prodotti che soddisfano le condizioni di ricerca.
    count int

    // Reparto in cui cercare. Visualizzato come elemento <select>.
    department HTML

    // Indica se la ricerca è stata eseguita.
    hasBeenExecuted bool

    // Parole chiave da cercare. Visualizzate come elemento <input>.
    keywords HTML

    // Immagine della pagina.
    image AlignedImage

    // Produttore in cui cercare. Visualizzato come elemento <select>.
    producer HTML

    // Paginazione, consente di spostarsi nei successivi prodotti.
    pagination Pagination

    // Prodotti risultanti dalla ricerca.
    products []Product

    // Menù da cui scegliere l'ordinamento dei prodotti. Visualizzato come
    // elemento <select>.
    sortBy HTML

)

new-releases.html

Visualizza tutti i prodotti in novità.


var (

    // Numero di colonne su cui visualizzare i prodotti.
    columns int
    
    // Contenuto della pagina.
    content HTML
    
    // Numero totale di prodotti in novità.
    count int

    // Immagine della pagina.
    image AlignedImage
    
    // Paginazione, consente di spostarsi nei successivi prodotti.
    pagination Pagination
    
    // Prodotti in novità.
    products []Product
    
    // Menù da cui scegliere l'ordinamento dei prodotti. Visualizzato come
    // un elemento <select>.
    sortBy HTML

)

share.html

Consente di condividere un prodotto o una promozione tramite email.

var (

    // Pulsante per inviare l'email.
    buttonSend HTML

    // Contenuto della pagina.
    content HTML
    
    // Messaggio da scrivere nell'email. Può essere scritto solo dai clienti
    // che hanno fatto il login.
    message HTML
    
    // Immagine della pagina.
    image AlignedImage
    
    // Destinatari dell'email.
    recipients HTML

    // Indirizzo email del mittente.
    senderEmail HTML
    
    // Nome del mittente.
    senderName HTML
    
    // Immagine del prodotto o della promozione.
    shareImage Image
    
    // Nome del prodotto o della promozione.
    shareName string
    
    // Messaggio che informa sull'esito dell'invio dell'email o su eventuali errori.
    statusMessage HTML

)

Variabile products

La variabile products (di tipo []Product) è usata nelle pagine index.html, department.html, producer.html, search.html, new-releases.html, wish-list.html e product.html per visualizzare i prodotti.

{% for product in products %} ... {% end for %}

I prodotti visualizzati dipendono dalla pagina in cui la variabile è usata. Ad esempio in department.html visualizza i prodotti del reparto, in wish-list.html visualizza i prodotti della lista dei desideri del cliente.

Il tipo Breadcrumb rappresenta i filtri attualmente applicati sotto forma di breadcrumb. Facendo clic su un filtro vengono applicati solamente il filtro stesso e i suoi predecessori.

Se si filtra per parole chiave e novità allora anche questi due saranno presenti come filtri nella breadcrumb.

type Breadcrumb struct {
    
    // Indica se il filtro è su un attributo.
    IsByAttribute bool
    
    // Indica se il filtro è sui reparti.
    IsByDepartment bool
    
    // Indica se il filtro è sulle parole chiave.
    IsByKeywords bool
    
    // Indica se il filtro è sui prodotti in novità.
    IsByNewrelease bool
    
    // Indica se il filtro è sul prezzo.
    IsByPrice bool
    
    // Indica se il filtro è sui produttori.
    IsByProducer bool

    // Nome del filtro applicato.
    Item HTML

    // Posizione a partire a 1. Viene utilizzato ad esempio per i microdata.
    Position int

}
Quanto ti è stata utile questa pagina?

Grazie per averci aiutato a migliorare questa pagina