Ajouter des règles de quantité à votre thème Shopify

Les règles de quantité pour le catalogue B2B ne sont prises en charge que pour les thèmes gratuits de Shopify, version 8.0.0 ou ultérieure. Si vous ne souhaitez pas modifier ou mettre à jour votre thème, vous pouvez ajouter le code suivant à votre thème pour afficher les règles de quantité.

Quantité de panier du produit

La valeur de quantité de panier d’une variante de produit peut être affichée sur la page de produit ou dans la section du produit en vedette. La valeur peut être récupérée à l’aide de Liquid.

Ajouter un code Liquid de quantité de panier du produit

Vous pouvez ajouter du code aux fichiers suivants dans votre thème pour prendre en charge la quantité du panier :

  • main-product.liquid ou équivalent
  • featured-product.liquid ou équivalent

Étapes :

  1. Ouvrez le fichier que vous souhaitez modifier.
  2. Créez une nouvelle ligne au bas du fichier et ajoutez le code suivant :
{% comment %} Cart quantity {% endcomment %}
<span id="CartQuantity-{{ section.id }}" data-product-url="{{ product.url }}" data-section-id="{{ section.id }}" data-variant-id="{{ product.selected_or_first_available_variant.id }}">
    {%- assign cart_qty = cart | item_count_for_variant: product.selected_or_first_available_variant.id -%}
    {{- 'products.product.quantity.in_cart' | t: quantity: cart_qty -}}
</span>
  1. Cliquez sur Enregistrer.

Ajouter un code de quantité de panier Javascript

Lorsque la quantité de panier d’une variante change, la valeur affichée sur la page du produit ou la section de produit en vedette doit être mise à jour. La valeur mise à jour peut être récupérée à l’aide du code Javascript.

Vous pouvez ajouter du code au fichier theme.js ou équivalent.

Étapes :

  1. Ouvrez le fichier theme.js.
  2. Créez une nouvelle ligne au bas du fichier et ajoutez le code suivant :
let productUrl = document.querySelector('[data-product-url]').dataset.productUrl;
let sectionId = document.querySelector('[data-section-id]').dataset.sectionId;
let variantId = document.querySelector('[data-variant-id]').dataset.variantId;

// Fetch updated HTML from Section Rendering API
fetch(`${productUrl}?section_id=${sectionId}&variant=${variantId}`)
    .then((response) => response.text())
    .then((responseText) => {
        // Replace the current HTML in DOM with the updated HTML

        const updatedHtml = new DOMParser().parseFromString(responseText, 'text/html');

        // Update the cart quantity
        const currentCartQuantity = document.querySelector(`#CartQuantity-${sectionId}`);
        const updatedCartQuantity = updatedHtml.querySelector(`#CartQuantity-${sectionId}`);
        currentCartQuantity.innerHTML = updatedCartQuantity.innerHTML;
    });
  1. Cliquez sur Enregistrer.

Règles de quantité

Les règles de quantité d’une variante de produit peuvent être affichées sur la page de produit ou dans la section de produit en vedette. Les règles peuvent être récupérées à l’aide de Liquid.

Ajouter du code de règles de quantité Liquid

Vous pouvez ajouter du code aux fichiers suivants de votre thème pour prendre en charge la quantité de panier de produit :

  • main-product.liquid ou équivalent
  • featured-product.liquid ou équivalent

Étapes :

  1. Ouvrez le fichier que vous souhaitez modifier.
  2. Créez une nouvelle ligne au bas du fichier, puis ajoutez le code suivant :
{% comment %} Quantity rules {% endcomment %}
<div id="QuantityRules-{{ section.id }}" data-product-url="{{ product.url }}" data-section-id="{{ section.id }}" data-variant-id="{{ product.selected_or_first_available_variant.id }}">
    {%- if product.selected_or_first_available_variant.quantity_rule.increment > 1 -%}
        <span>
        {{- 'products.product.quantity.multiples_of' | t: quantity: product.selected_or_first_available_variant.quantity_rule.increment -}}
        </span>
    {%- endif -%}
    {%- if product.selected_or_first_available_variant.quantity_rule.min > 1 -%}
        <span>
        &nbsp;-&nbsp;
        {{- 'products.product.quantity.minimum_of' | t: quantity: product.selected_or_first_available_variant.quantity_rule.min -}}
        </span>
    {%- endif -%}
    {%- if product.selected_or_first_available_variant.quantity_rule.max != null -%}
        <span>
        &nbsp;-&nbsp;
        {{- 'products.product.quantity.maximum_of' | t: quantity: product.selected_or_first_available_variant.quantity_rule.max -}}
        </span>
    {%- endif -%}
</div>
  1. Cliquez sur Enregistrer.

Ajouter du code de règles de quantité JavaScript

Chaque variante d’un produit peut avoir son propre ensemble de règles de quantité. Une fois qu’une variante différente est sélectionnée, les règles de quantité affichées sur une page de produit ou une section de produit en vedette doivent être mises à jour. La valeur mise à jour peut être récupérée à l’aide du code Javascript.

  • theme.js ou équivalent
  • en.default.json

Étapes :

  1. Ouvrez le fichier theme.js.
  2. Créez une nouvelle ligne au bas du fichier, puis ajoutez le code suivant :
let productUrl = document.querySelector('[data-product-url]').dataset.productUrl;
let sectionId = document.querySelector('[data-section-id]').dataset.sectionId;
let variantId = document.querySelector('[data-variant-id]').dataset.variantId;
// `variantId` is set to the current variant's id. Replace this value with the updated variant's id

// Fetch updated HTML from Section Rendering API
fetch(`${productUrl}?section_id=${sectionId}&variant=${variantId}`)
    .then((response) => response.text())
    .then((responseText) => {
        // Replace the current HTML in DOM with the updated HTML

        const updatedHtml = new DOMParser().parseFromString(responseText, 'text/html');

        // Update the quantity rules
        const currentQuantityRules = document.querySelector(`#QuantityRules-${sectionId}`);
        const updatedQuantityRules = updatedHtml.querySelector(`#QuantityRules-${sectionId}`);
        currentQuantityRules.innerHTML = updatedQuantityRules.innerHTML;
    });
  1. Cliquez sur Enregistrer.

Ajouter des paramètres régionaux

Ajouter des chaînes de traduction JSON

Étapes :

  1. Ouvrez le fichier en.default.json.
  2. Créez une nouvelle ligne au bas du fichier, puis ajoutez le code suivant :
{
   "products":{
      "quantity":{
         "minimum_of":"Minimum of ",
         "maximum_of":"Maximum of ",
         "multiples_of":"Increments of ",
         "in_cart": " in cart"
      }
   }
}
  1. Cliquez sur Enregistrer.

Prêt(e) à commencer à vendre avec Shopify ?

Essayez gratuitement