Salta ai contenuti
Prova gratis per 15 giorni
Italiano
Apri in Claude Fai domande su questa paginaApri in ChatGPT Fai domande su questa pagina

Custom liquid

Scrivi un tuo snippet Liquid per decidere l'accesso, con variabili di cliente, carrello, prodotto e vetrina.

La regola Custom liquid ti permette di scrivere un tuo snippet di codice Liquid per decidere se chi visita il negozio ottiene l’accesso. È la regola più flessibile dell’app: tutto ciò che puoi esprimere come condizione Liquid sul cliente, sul suo carrello, sul prodotto o sulla collezione attuale o sulla vetrina stessa può servire per limitare l’accesso ai contenuti. Ma è anche l’unica regola in cui un errore nello snippet ha conseguenze reali, descritte più avanti.

Custom liquid è una regola basata su un’azione, quindi non ha un interruttore If/Unless. L’app esegue invece il tuo snippet per ogni persona che visita il negozio e ne legge il risultato finale. Il risultato deve essere esattamente true o false (gli spazi intorno vengono ignorati): true supera la regola e false no. Qualsiasi altro output, come true - customer is eligible, non è un risultato valido. Lo snippet ha accesso allo stesso tipo di dati che un tema Shopify avrebbe su chi visita il negozio e sulla pagina corrente.

Apri il blocco, fai clic sulla scheda Unlock rules e scegli Custom liquid dal menu a discesa Condition type.

Il menu a discesa Condition type con Custom liquid selezionato

Seleziona Custom liquid dal menu a discesa Condition type nella scheda Unlock rules.

Il tipo di condizione della regola apre un editor di codice Liquid dedicato, con evidenziazione della sintassi, completamento automatico e convalida della sintassi in tempo reale: gli errori nel tuo Liquid vengono segnalati direttamente nell’editor mentre scrivi, ancora prima di salvare.

Editor di codice Custom liquid con uno snippet e un indicatore di convalida della sintassi

Scrittura e convalida di uno snippet Liquid nell’editor di codice.

L’editor offre una libreria di variabili che puoi inserire, raggruppate in base a ciò che descrivono:

Gruppo Variabili
Cliente customer, customer.tags, customer.orders_count, customer.total_spent, customer.b2b?
Carrello cart.item_count, cart.total_price, cart.items
Prodotto e collezione product.tags, product.vendor, product.metafields, collection.handle
Vetrina request.path, request.page_type, localization.country.iso_code, localization.language.iso_code

Pannello Variables and templates con le variabili Liquid disponibili raggruppate per categoria

Consultazione delle variabili disponibili dal pannello Variables and templates.

Se preferisci partire da qualcosa di funzionante invece che da un editor vuoto, lo stesso pannello include modelli già pronti da inserire e adattare, tra cui un controllo di cliente con accesso effettuato, un controllo del tag cliente, un minimo di quantità o totale del carrello, un controllo del tag prodotto, un controllo del paese di chi visita, un controllo del percorso URL e un modello Shopify B2B customer già pronto che controlla direttamente customer.b2b?.

Pannello dei modelli di esempio con un elenco di snippet Liquid già pronti da usare come punto di partenza

Scelta di un modello di partenza, incluso il modello Shopify B2B già pronto.

  1. Apri il blocco che vuoi proteggere e fai clic sulla scheda Unlock rules.
  2. Aggiungi una regola di accesso e imposta il tipo di condizione su Custom liquid.
  3. Scrivi lo snippet direttamente nell’editor oppure apri Variables and templates per copiare una variabile o partire da uno dei modelli già pronti.
  4. Assicurati che l’output finale dello snippet sia esattamente true per chi deve passare ed esattamente false per tutti gli altri. Non aggiungere testo esplicativo, HTML o altro output intorno al valore. L’editor segnala i problemi di sintassi di base, ma devi comunque verificare che la logica corrisponda a ciò che intendi.
  5. Se vuoi, imposta un Redirect URL specifico per la regola, usato solo se è proprio questa regola a negare l’accesso.
  6. Salva il blocco.

Esempio: consentire l’accesso ai clienti con tag VIP che hanno effettuato l’accesso

Sezione intitolata “Esempio: consentire l’accesso ai clienti con tag VIP che hanno effettuato l’accesso”

Supponiamo che una pagina privata debba essere disponibile solo ai clienti con accesso effettuato il cui account ha il tag vip.

  1. Seleziona la pagina VIP collection preview come contenuto da proteggere.

La scheda Lock setup con Specific Page come tipo di contenuto e la pagina VIP collection preview elencata sotto Restricted pages.

Scegli la pagina che vuoi riservare ai clienti VIP.

  1. Aggiungi Custom liquid e sostituisci lo snippet iniziale con:
{% if customer and customer.tags contains 'vip' %}true{% else %}false{% endif %}

L’editor conferma Liquid syntax is valid sotto lo snippet mentre scrivi.

La condizione Custom liquid con lo snippet del tag VIP nell’editor della condizione Liquid e la conferma Liquid syntax is valid sotto.

L’editor evidenzia il Liquid e ne convalida la sintassi prima del salvataggio.

  1. Lascia vuoto il campo Redirect URL della regola.
  2. Imposta Access denied message su:

This page is available to VIP customers only.

La scheda Messages con Access denied message impostato sul testo riservato ai clienti VIP e il pannello Preview che lo mostra.

Custom liquid ha un solo campo messaggio, mostrato a tutti coloro che lo snippet respinge.

  1. Fai clic su Save.

Lo snippet restituisce esattamente true per un cliente con accesso effettuato che ha il tag vip, quindi la pagina si apre normalmente. Restituisced esattamente false per chi visita come ospite e per i clienti senza quel tag, che vedono il messaggio qui sopra. Non aggiungere testo prima o dopo true o false nell’output dello snippet.

La pagina VIP collection preview che mostra il messaggio configurato riservato ai clienti VIP.

Quando lo snippet Liquid restituisce false, chi visita il negozio vede l’Access denied message di questo esempio.

Questa pagina ti è stata utile?