Quando un cliente visita una pagina del prodotto sul tuo negozio online, per impostazione predefinita viene selezionata la prima variante disponibile. Puoi utilizzare la personalizzazione Incoraggiare i clienti a scegliere un'opzione per disabilitare la selezione automatica della prima variante disponibile. In questo modo prima di mostrare una variante, verrà richiesto al cliente di selezionarne una manualmente.
Se utilizzi l'opzione Incoraggiare i clienti a scegliere un'opzione per fare in modo che i clienti scelgano un'opzione di personalizzazione, il tema potrebbe non mostrare il prezzo del prodotto fino a quando il cliente non ne seleziona una variante. I prodotti con varianti non hanno un prezzo in evidenza e il prezzo visualizzato è determinato dalla variante selezionata.
I passaggi per questa personalizzazione variano a seconda del tuo tema. Clicca sul pulsante del tema prima di seguire le istruzioni qui sotto:
Boundless
Passaggi per Boundless
Segui questi passaggi per applicare la personalizzazione a Boundless:
Modifica il file JavaScript del tema
Dal pannello di controllo Shopify, vai su Negozio online > Temi.
Trova il tema che desideri modificare, clicca sul pulsante … per aprire il menu azioni, quindi clicca su Modifica codice.
Nella directory Risorse, clicca su theme.js o su theme.js.liquid.
Trova il codice initVariantSelectors. Di seguito cerca il codice seguente:
// Clean up variant labels if the Shopify-defined
// defaults are the only ones left
this.simplifyVariantLabels(this.productSingleObject, this.$container);
Aggiungi il codice seguente in una nuova riga sottostante:
if (typeof(productOptions) != "undefined") {
for (i = 0; i < productOptions.length; i++) {
const vowels = ['a', 'e', 'i', 'o', 'u'];
const firstOptionLetter = productOptions[i][i][0].toLowerCase();
let indef = 'a';
if (vowels.includes(firstOptionLetter)) {
indef = 'an';
};
const select = document.querySelectorAll('.single-option-selector')[i];
const options = select.querySelectorAll('option');
if (options.length > 1) {
let option = new Option('Pick ' + indef + ' ' + productOptions[i][i], '');
select.add(option, select.firstChild);
select.selectedIndex = 0;
}
}
}
Dovrebbe avere un aspetto simile a questo:
// Clean up variant labels if the Shopify-defined
// defaults are the only ones left
this.simplifyVariantLabels(this.productSingleObject, this.$container);
if (typeof(productOptions) != "undefined") {
for (i = 0; i < productOptions.length; i++) {
const vowels = ['a', 'e', 'i', 'o', 'u'];
const firstOptionLetter = productOptions[i][i][0].toLowerCase();
let indef = 'a';
if (vowels.includes(firstOptionLetter)) {
indef = 'an';
};
const select = document.querySelectorAll('.single-option-selector')[i];
const options = select.querySelectorAll('option');
if (options.length > 1) {
let option = new Option('Pick ' + indef + ' ' + productOptions[i][i], '');
select.add(option, select.firstChild);
select.selectedIndex = 0;
}
{% if variant == product.selected_or_first_available_variant %} selected="selected" {% endif %}
Trova il codice {% schema %}. Sopra a questo, incolla il codice seguente su una riga separata:
{% if current_variant == blank %}
<script>
var productOptions = [];
{% for option in product.options -%}
var optionObj = {};
optionObj[{{ forloop.index0 }}] = "{{ product.options[forloop.index0] }}";
productOptions.push(optionObj);
{%- endfor %}
</script>
{% endif %}
Dovrebbe avere un aspetto simile a questo:
{% if current_variant == blank %}
<script>
var productOptions = [];
{% for option in product.options -%}
var optionObj = {};
optionObj[{{ forloop.index0 }}] = "{{ product.options[forloop.index0] }}";
productOptions.push(optionObj);
{%- endfor %}
</script>
{% endif %}
{% schema %}
Clicca su Salva.
Modifica le impostazioni della lingua per il pulsante Aggiungi al carrello
Puoi modificare le impostazioni della lingua per il pulsante Aggiungi al carrello per evitare che i prodotti appaiano come Non disponibili prima che un cliente selezioni un prodotto.
Passaggi:
Dal pannello di controllo Shopify, vai su Negozio online > Temi.
Trova il tema che desideri modificare, quindi clicca su ... > Modifica contenuto tema predefinito.
Nella barra di ricerca Filtra articoli, inizia a digitare non disponibile per visualizzare la traduzione di Non disponibile.
Sostituisci il testo Non disponibile con Fai una selezione.
Clicca su Salva.
Debut
Passaggi per Debut
Segui questi passaggi per applicare la personalizzazione a Debut:
Modifica il file JavaScript del tema
Dal pannello di controllo Shopify, vai su Negozio online > Temi.
Trova il tema che desideri modificare, clicca sul pulsante … per aprire il menu azioni, quindi clicca su Modifica codice.
Nella directory Risorse, clicca su theme.js o su theme.js.liquid.
Aggiungi il seguente codice in fondo al file:
(function() {
if (typeof(productOptions) != "undefined") {
for (i = 0; i < productOptions.length; i++) {
const vowels = ['a', 'e', 'i', 'o', 'u'];
const firstOptionLetter = productOptions[i][i][0].toLowerCase();
let indef = 'a';
Modifica le impostazioni della lingua per il pulsante Aggiungi al carrello
Puoi modificare le impostazioni della lingua per il pulsante Aggiungi al carrello per evitare che i prodotti appaiano come Non disponibili prima che un cliente selezioni un prodotto.
Passaggi:
Dal pannello di controllo Shopify, vai su Negozio online > Temi.
Trova il tema che desideri modificare, quindi clicca su ... > Modifica contenuto tema predefinito.
Nella barra di ricerca Filtra articoli, inizia a digitare non disponibile per visualizzare la traduzione di Non disponibile.
Sostituisci il testo Non disponibile con Fai una selezione.
Clicca su Salva.
Minimal
Passaggi per Minimal
Segui questi passaggi per applicare la personalizzazione a Minimal:
Modifica il file JavaScript del tema
Dal pannello di controllo Shopify, vai su Negozio online > Temi.
Trova il tema che desideri modificare, clicca sul pulsante … per aprire il menu azioni, quindi clicca su Modifica codice.
Nella directory Risorse, clicca su theme.js o su theme.js.liquid.
Trova il codice initProductVariant: function() {. Di seguito cerca il codice seguente:
// Hide selectors if we only have 1 variant and its title contains 'Default'.
if (
product.variants.length === 1 &&
product.variants[0].title.toLowerCase().indexOf('default') !== -1
) {
$('.selector-wrapper', this.$container).hide();
}
Aggiungi il codice seguente in una nuova riga sottostante:
if (typeof(productOptions) != "undefined") {
for (i = 0; i < productOptions.length; i++) {
const vowels = ['a', 'e', 'i', 'o', 'u'];
const firstOptionLetter = productOptions[i][i][0].toLowerCase();
let indef = 'a';
if (vowels.includes(firstOptionLetter)) {
indef = 'an';
};
const select = document.querySelectorAll('.single-option-selector')[i];
const options = select.querySelectorAll('option');
if (options.length > 1) {
let option = new Option('Pick ' + indef + ' ' + productOptions[i][i], '');
select.add(option, select.firstChild);
select.selectedIndex = 0;
}
}
}
Dovrebbe avere un aspetto simile a questo:
// Hide selectors if we only have 1 variant and its title contains 'Default'.
if (
product.variants.length === 1 &&
product.variants[0].title.toLowerCase().indexOf('default') !== -1
) {
$('.selector-wrapper', this.$container).hide();
}
if (typeof(productOptions) != "undefined") {
for (i = 0; i < productOptions.length; i++) {
const vowels = ['a', 'e', 'i', 'o', 'u'];
const firstOptionLetter = productOptions[i][i][0].toLowerCase();
let indef = 'a';
if (vowels.includes(firstOptionLetter)) {
indef = 'an';
};
const select = document.querySelectorAll('.single-option-selector')[i];
const options = select.querySelectorAll('option');
if (options.length > 1) {
let option = new Option('Pick ' + indef + ' ' + productOptions[i][i], '');
select.add(option, select.firstChild);
select.selectedIndex = 0;
}
}
}
Clicca su Salva.
Modifica il modello della pagina del prodotto
Per modificare il modello della pagina del prodotto:
Nella directory Sezioni, clicca su product-template.liquid.
Trova il codice {% schema %}. Sopra a questo, incolla il codice seguente su una riga separata:
{% if current_variant == blank %}
<script>
var productOptions = [];
{% for option in product.options -%}
var optionObj = {};
optionObj[{{ forloop.index0 }}] = "{{ product.options[forloop.index0] }}";
productOptions.push(optionObj);
{%- endfor %}
</script>
{% endif %}
Dovrebbe avere un aspetto simile a questo:
{% if current_variant == blank %}
<script>
var productOptions = [];
{% for option in product.options -%}
var optionObj = {};
optionObj[{{ forloop.index0 }}] = "{{ product.options[forloop.index0] }}";
productOptions.push(optionObj);
{%- endfor %}
</script>
{% endif %}
{% schema %}
Clicca su Salva.
Modifica le impostazioni della lingua per il pulsante Aggiungi al carrello
Puoi modificare le impostazioni della lingua per il pulsante Aggiungi al carrello per evitare che i prodotti appaiano come Non disponibili prima che un cliente selezioni un prodotto.
Passaggi:
Dal pannello di controllo Shopify, vai su Negozio online > Temi.
Trova il tema che desideri modificare, quindi clicca su ... > Modifica contenuto tema predefinito.
Nella barra di ricerca Filtra articoli, inizia a digitare non disponibile per visualizzare la traduzione di Non disponibile.
Sostituisci il testo Non disponibile con Fai una selezione.
Clicca su Salva.
Narrative
Passaggi per Narrative
Segui questi passaggi per applicare la personalizzazione a Narrative:
Modifica il file JavaScript del tema
Dal pannello di controllo Shopify, vai su Negozio online > Temi.
Trova il tema che desideri modificare, clicca sul pulsante … per aprire il menu azioni, quindi clicca su Modifica codice.
Nella directory Risorse, clicca su custom.js.
Aggiungi il seguente codice in fondo al file:
(function() {
if (typeof(productOptions) != "undefined") {
for (i = 0; i < productOptions.length; i++) {
const vowels = ['a', 'e', 'i', 'o', 'u'];
const firstOptionLetter = productOptions[i][i][0].toLowerCase();
let indef = 'a';
Trova il codice {% schema %}. Sopra a questo, incolla il codice seguente su una riga separata:
{% if current_variant == blank %}
<script>
var productOptions = [];
{% for option in product.options -%}
var optionObj = {};
optionObj[{{ forloop.index0 }}] = "{{ product.options[forloop.index0] }}";
productOptions.push(optionObj);
{%- endfor %}
</script>
{% endif %}
Dovrebbe avere un aspetto simile a questo:
{% if current_variant == blank %}
<script>
var productOptions = [];
{% for option in product.options -%}
var optionObj = {};
optionObj[{{ forloop.index0 }}] = "{{ product.options[forloop.index0] }}";
productOptions.push(optionObj);
{%- endfor %}
</script>
{% endif %}
{% schema %}
Clicca su Salva.
Modifica le impostazioni della lingua per il pulsante Aggiungi al carrello
Puoi modificare le impostazioni della lingua per il pulsante Aggiungi al carrello per evitare che i prodotti appaiano come Non disponibili prima che un cliente selezioni un prodotto.
Passaggi:
Dal pannello di controllo Shopify, vai su Negozio online > Temi.
Trova il tema che desideri modificare, quindi clicca su ... > Modifica contenuto tema predefinito.
Nella barra di ricerca Filtra articoli, inizia a digitare non disponibile per visualizzare la traduzione di Non disponibile.
Sostituisci il testo Non disponibile con Fai una selezione.
Clicca su Salva.
Simple
Passaggi per Simple
Segui questi passaggi per applicare la personalizzazione a Simple:
Modifica il file JavaScript del tema
Dal pannello di controllo Shopify, vai su Negozio online > Temi.
Trova il tema che desideri modificare, clicca sul pulsante … per aprire il menu azioni, quindi clicca su Modifica codice.
Nella directory Risorse, clicca su theme.js o su theme.js.liquid.
Trova il codice initProductVariant: function() {. Di seguito cerca il codice seguente:
// Clean up variant labels if the Shopify-defined
// defaults are the only ones left
Slate.simplifyVariantLabels(this.productSingleObject, this.$container);
Aggiungi il codice seguente in una nuova riga sottostante:
if (typeof(productOptions) != "undefined") {
for (i = 0; i < productOptions.length; i++) {
const vowels = ['a', 'e', 'i', 'o', 'u'];
const firstOptionLetter = productOptions[i][i][0].toLowerCase();
let indef = 'a';
if (vowels.includes(firstOptionLetter)) {
indef = 'an';
};
const select = document.querySelectorAll('.single-option-selector')[i];
const options = select.querySelectorAll('option');
if (options.length > 1) {
let option = new Option('Pick ' + indef + ' ' + productOptions[i][i], '');
select.add(option, select.firstChild);
select.selectedIndex = 0;
}
}
}
Dovrebbe avere un aspetto simile a questo:
// Clean up variant labels if the Shopify-defined
// defaults are the only ones left
Slate.simplifyVariantLabels(this.productSingleObject, this.$container);
if (typeof(productOptions) != "undefined") {
for (i = 0; i < productOptions.length; i++) {
const vowels = ['a', 'e', 'i', 'o', 'u'];
const firstOptionLetter = productOptions[i][i][0].toLowerCase();
let indef = 'a';
if (vowels.includes(firstOptionLetter)) {
indef = 'an';
};
const select = document.querySelectorAll('.single-option-selector')[i];
const options = select.querySelectorAll('option');
if (options.length > 1) {
let option = new Option('Pick ' + indef + ' ' + productOptions[i][i], '');
select.add(option, select.firstChild);
select.selectedIndex = 0;
}
}
}
Clicca su Salva.
Modifica il modello della pagina del prodotto
Per modificare il modello della pagina del prodotto:
Nella directory Sezioni, clicca su product-template.liquid.
{% if variant == product.selected_or_first_available_variant %} selected="selected" {% endif %}
Trova il codice {% schema %}. Sopra a questo, incolla il codice seguente su una riga separata:
{% if current_variant == blank %}
<script>
var productOptions = [];
{% for option in product.options -%}
var optionObj = {};
optionObj[{{ forloop.index0 }}] = "{{ product.options[forloop.index0] }}";
productOptions.push(optionObj);
{%- endfor %}
</script>
{% endif %}
Dovrebbe avere un aspetto simile a questo:
{% if current_variant == blank %}
<script>
var productOptions = [];
{% for option in product.options -%}
var optionObj = {};
optionObj[{{ forloop.index0 }}] = "{{ product.options[forloop.index0] }}";
productOptions.push(optionObj);
{%- endfor %}
</script>
{% endif %}
{% schema %}
Clicca su Salva.
Modifica le impostazioni della lingua per il pulsante Aggiungi al carrello
Puoi modificare le impostazioni della lingua per il pulsante Aggiungi al carrello per evitare che i prodotti appaiano come Non disponibili prima che un cliente selezioni un prodotto.
Passaggi:
Dal pannello di controllo Shopify, vai su Negozio online > Temi.
Trova il tema che desideri modificare, quindi clicca su ... > Modifica contenuto tema predefinito.
Nella barra di ricerca Filtra articoli, inizia a digitare non disponibile per visualizzare la traduzione di Non disponibile.
Sostituisci il testo Non disponibile con Fai una selezione.
Clicca su Salva.
Supply
Passaggi per Supply
Segui questi passaggi per applicare la personalizzazione a Supply:
Modifica il file JavaScript del tema
Dal pannello di controllo Shopify, vai su Negozio online > Temi.
Trova il tema che desideri modificare, clicca sul pulsante … per aprire il menu azioni, quindi clicca su Modifica codice.
Nella directory Risorse, clicca su theme.js o su theme.js.liquid.
Trova il codice initProductVariant: function() {. Di seguito cerca il codice seguente:
// Clean up variant labels if the Shopify-defined
// defaults are the only ones left
this.simplifyVariantLabels(this.productSingleObject);
Aggiungi il codice seguente in una nuova riga sottostante:
if (typeof(productOptions) != "undefined") {
for (i = 0; i < productOptions.length; i++) {
const vowels = ['a', 'e', 'i', 'o', 'u'];
const firstOptionLetter = productOptions[i][i][0].toLowerCase();
let indef = 'a';
if (vowels.includes(firstOptionLetter)) {
indef = 'an';
};
const select = document.querySelectorAll('.single-option-selector')[i];
const options = select.querySelectorAll('option');
if (options.length > 1) {
let option = new Option('Pick ' + indef + ' ' + productOptions[i][i], '');
select.add(option, select.firstChild);
select.selectedIndex = 0;
}
}
}
Dovrebbe avere un aspetto simile a questo:
// Clean up variant labels if the Shopify-defined
// defaults are the only ones left
this.simplifyVariantLabels(this.productSingleObject);
if (typeof(productOptions) != "undefined") {
for (i = 0; i < productOptions.length; i++) {
const vowels = ['a', 'e', 'i', 'o', 'u'];
const firstOptionLetter = productOptions[i][i][0].toLowerCase();
let indef = 'a';
if (vowels.includes(firstOptionLetter)) {
indef = 'an';
};
const select = document.querySelectorAll('.single-option-selector')[i];
const options = select.querySelectorAll('option');
if (options.length > 1) {
let option = new Option('Pick ' + indef + ' ' + productOptions[i][i], '');
select.add(option, select.firstChild);
select.selectedIndex = 0;
}
}
}
Clicca su Salva.
Modifica il modello della pagina del prodotto
Per modificare il modello della pagina del prodotto:
Nella directory Sezioni, clicca su product-template.liquid.
Trova il codice {% schema %}. Sopra a questo, incolla il codice seguente su una riga separata:
{% if current_variant == blank %}
<script>
var productOptions = [];
{% for option in product.options -%}
var optionObj = {};
optionObj[{{ forloop.index0 }}] = "{{ product.options[forloop.index0] }}";
productOptions.push(optionObj);
{%- endfor %}
</script>
{% endif %}
Dovrebbe avere un aspetto simile a questo:
{% if current_variant == blank %}
<script>
var productOptions = [];
{% for option in product.options -%}
var optionObj = {};
optionObj[{{ forloop.index0 }}] = "{{ product.options[forloop.index0] }}";
productOptions.push(optionObj);
{%- endfor %}
</script>
{% endif %}
{% schema %}
Clicca su Salva.
Modifica le impostazioni della lingua per il pulsante Aggiungi al carrello
Puoi modificare le impostazioni della lingua per il pulsante Aggiungi al carrello per evitare che i prodotti appaiano come Non disponibili prima che un cliente selezioni un prodotto.
Passaggi:
Dal pannello di controllo Shopify, vai su Negozio online > Temi.
Trova il tema che desideri modificare, quindi clicca su ... > Modifica contenuto tema predefinito.
Nella barra di ricerca Filtra articoli, inizia a digitare non disponibile per visualizzare la traduzione di Non disponibile.
Sostituisci il testo Non disponibile con Fai una selezione.
Clicca su Salva.
Venture
Passaggi per Venture
Segui questi passaggi per applicare la personalizzazione a Venture:
Modifica il file JavaScript del tema
Dal pannello di controllo Shopify, vai su Negozio online > Temi.
Trova il tema che desideri modificare, clicca sul pulsante … per aprire il menu azioni, quindi clicca su Modifica codice.
Nella directory Risorse, clicca su theme.js o su theme.js.liquid.
Aggiungi il seguente codice in fondo al file:
(function() {
if (typeof(productOptions) != "undefined") {
for (i = 0; i < productOptions.length; i++) {
const vowels = ['a', 'e', 'i', 'o', 'u'];
const firstOptionLetter = productOptions[i][i][0].toLowerCase();
let indef = 'a';
{% unless current_variant.available or product.variants.size == 1 and variant.available %}
{{ 'products.product.sold_out' | t }}
{% else %}
{{ 'products.product.add_to_cart' | t }}
{% endunless %}
Sostituiscilo con:
{% if current_variant == blank %}
{{ 'products.product.unavailable' | t }}
{% else %}
{% unless current_variant.available or product.variants.size == 1 and variant.available %}
{{ 'products.product.sold_out' | t }}
{% else %}
{{ 'products.product.add_to_cart' | t }}
{% endunless %}
{% endif %}
Trova il codice {% schema %}. Sopra a questo, incolla il codice seguente su una riga separata:
{% if current_variant == blank %}
<script>
var productOptions = [];
{% for option in product.options -%}
var optionObj = {};
optionObj[{{ forloop.index0 }}] = "{{ product.options[forloop.index0] }}";
productOptions.push(optionObj);
{%- endfor %}
</script>
{% endif %}
Dovrebbe avere un aspetto simile a questo:
{% if current_variant == blank %}
<script>
var productOptions = [];
{% for option in product.options -%}
var optionObj = {};
optionObj[{{ forloop.index0 }}] = "{{ product.options[forloop.index0] }}";
productOptions.push(optionObj);
{%- endfor %}
</script>
{% endif %}
{% schema %}
Clicca su Salva.
Modifica le impostazioni della lingua per il pulsante Aggiungi al carrello
Puoi modificare le impostazioni della lingua per il pulsante Aggiungi al carrello per evitare che i prodotti appaiano come Non disponibili prima che un cliente selezioni un prodotto.
Passaggi:
Dal pannello di controllo Shopify, vai su Negozio online > Temi.
Trova il tema che desideri modificare, quindi clicca su ... > Modifica contenuto tema predefinito.
Nella barra di ricerca Filtra articoli, inizia a digitare non disponibile per visualizzare la traduzione di Non disponibile.
Sostituisci il testo Non disponibile con Fai una selezione.
Clicca su Salva.
Passaggi per i Temi senza sezioni
Aggiunta di prompt ai menu a discesa delle varianti
Nella directory Frammenti, clicca su Aggiungi un nuovo frammento.
Assegna al nuovo frammento il nome pick-an-option.
Trova il tag di chiusura </body> in fondo al file. Su una nuova riga proprio sopra il tag di chiusura </body>, incolla il codice seguente:
{% render 'pick-an-option' %}
Clicca su Salva.
Trova il file che contiene il modulo Aggiungi al carrello. Avrà l’attributo action impostato su /cart/add. Dovrebbe essere in uno di questi quattro file:
Modifica le impostazioni della lingua per il pulsante Aggiungi al carrello
Puoi modificare le impostazioni della lingua per il pulsante Aggiungi al carrello per evitare che i prodotti appaiano come Non disponibili prima che un cliente selezioni un prodotto.
Passaggi:
Dal pannello di controllo Shopify, vai su Negozio online > Temi.
Trova il tema che desideri modificare, quindi clicca su ... > Modifica contenuto tema predefinito.
Nella barra di ricerca Filtra articoli, inizia a digitare non disponibile per visualizzare la traduzione di Non disponibile.
Sostituisci il testo Non disponibile con Fai una selezione.
Clicca su Salva.
Non trovi le risposte che stai cercando? Siamo qui per aiutarti.