अपने स्टोर पर मात्रा के नियम और वॉल्यूम प्राइसिंग दिखाना
आप नवीनतम वर्शन में अपने स्टोर की थीम को अपडेट करके अपने स्टोर पर B2B कैटलॉग के लिए मात्रा के नियम और वॉल्यूम प्राइसिंग दिखा सकते हैं।
अगर आप अपनी थीम को बदलना या अपडेट नहीं करना चाहते हैं, तो आप मात्रा के नियम और वॉल्यूम प्राइसिंग दिखाने के लिए अपनी थीम में निम्नलिखित कोड जोड़ सकते हैं।
इस पेज पर
अपने थीम कोड में मात्रा के नियम और वॉल्यूम प्राइसिंग जोड़ने से जुड़ी ज़रूरी बातें
अपने थीम कोड में मात्रा के नियम और वॉल्यूम प्राइसिंग जोड़ने से पहले, निम्नलिखित ज़रूरी बातों की समीक्षा करें:
- यह एक एडवांस्ड ट्यूटोरियल है। अगर आप थीम कोड को पढ़ने और एडिट करने में सहज नहीं हैं, तो आप किसी डेवलपर के साथ काम कर सकते हैं या Shopify Partner को काम पर रख सकते हैं।
- अपनी थीम फ़ाइल में अपडेट करने से पहले, बैकअप कॉपी बनाने के लिए अपनी थीम का डुप्लीकेट बनाएं।
- B2B कैटलॉग के लिए मात्रा के नियम मुफ़्त Shopify थीम, वर्शन 8.0.0 या उसके बाद के वर्शन पर काम करते हैं। वॉल्यूम प्राइसिंग वर्शन 11.0.0 या उसके बाद के वर्शन पर काम करती है।
प्रोडक्ट कार्ट की मात्रा
प्रोडक्ट के प्रकार की कार्ट मात्रा वैल्यू को प्रोडक्ट पेज या फ़ीचर्ड प्रोडक्ट सेक्शन पर दिखाया जा सकता है। Liquid का इस्तेमाल करके वैल्यू को फ़ेच किया जा सकता है।
Liquid प्रोडक्ट कार्ट मात्रा कोड जोड़ें
कार्ट की मात्रा को सपोर्ट करने के लिए आप अपनी थीम में निम्नलिखित फ़ाइलों में कोड जोड़ सकते हैं:
main-product.liquidया उसके बराबर की फ़ाइलfeatured-product.liquidया उसके बराबर की फ़ाइल
चरण:
अपने Shopify एडमिन से, ऑनलाइन स्टोर > थीम पर जाएं।
वह थीम ढूंढें जिसे आप एडिट करना चाहते हैं, एक्शन मेनू खोलने के लिए ... बटन पर क्लिक करें और फिर कोड एडिट करें पर क्लिक करें।
वह फ़ाइल खोलें जिसे आप एडिट करना चाहते हैं।
फ़ाइल के नीचे एक नई लाइन बनाएं और निम्नलिखित कोड जोड़ें:
{% 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 }}">
{{ cart | line_items_for: product | sum: 'quantity' }}
{{- 'products.product.quantity.in_cart' | t: quantity: cart_qty -}}
</span>- सेव करें पर क्लिक करें।
Javascript कार्ट मात्रा कोड जोड़ें
जब किसी प्रकार की कार्ट मात्रा बदलती है, तो प्रोडक्ट पेज या फ़ीचर्ड प्रोडक्ट सेक्शन पर दिखाई गई वैल्यू को अपडेट किया जाना चाहिए। अपडेट की गई वैल्यू को Javascript कोड का इस्तेमाल करके फ़ेच किया जा सकता है।
आप theme.js फ़ाइल या उसके बराबर की किसी फ़ाइल में कोड जोड़ सकते हैं।
चरण:
अपने Shopify एडमिन से, ऑनलाइन स्टोर > थीम पर जाएं।
वह थीम ढूंढें जिसे आप एडिट करना चाहते हैं, एक्शन मेनू खोलने के लिए ... बटन पर क्लिक करें और फिर कोड एडिट करें पर क्लिक करें।
theme.jsफ़ाइल खोलें।फ़ाइल के नीचे एक नई लाइन बनाएं और निम्नलिखित कोड जोड़ें:
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;
});- सेव करें पर क्लिक करें।
मात्रा के नियम
प्रोडक्ट के प्रकार के लिए मात्रा के नियम, प्रोडक्ट पेज या फ़ीचर्ड प्रोडक्ट सेक्शन पर दिखाए जा सकते हैं। Liquid का इस्तेमाल करके नियमों को फ़ेच किया जा सकता है।
Liquid मात्रा के नियम कोड जोड़ें
मात्रा के नियमों को सपोर्ट करने के लिए, आप अपनी थीम में निम्नलिखित फ़ाइलों में कोड जोड़ सकते हैं:
main-product.liquidया उसके बराबर की फ़ाइलfeatured-product.liquidया उसके बराबर की फ़ाइल
चरण:
अपने Shopify एडमिन से, ऑनलाइन स्टोर > थीम पर जाएं।
वह थीम ढूंढें जिसे आप एडिट करना चाहते हैं, एक्शन मेनू खोलने के लिए ... बटन पर क्लिक करें और फिर कोड एडिट करें पर क्लिक करें।
वह फ़ाइल खोलें जिसे आप एडिट करना चाहते हैं।
फ़ाइल के नीचे एक नई लाइन बनाएं और फिर निम्नलिखित कोड जोड़ें:
{% 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>
-
{{- '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>
-
{{- 'products.product.quantity.maximum_of' | t: quantity: product.selected_or_first_available_variant.quantity_rule.max -}}
</span>
{%- endif -%}
</div>- सेव करें पर क्लिक करें।
Javascript मात्रा के नियम कोड जोड़ें
किसी प्रोडक्ट के हर प्रकार के लिए मात्रा के नियमों का अपना सेट हो सकता है। कोई दूसरा प्रकार चुनने के बाद, प्रोडक्ट पेज या फ़ीचर्ड प्रोडक्ट सेक्शन पर दिखाए गए मात्रा के नियमों को अपडेट करना होगा। अपडेट की गई वैल्यू को Javascript कोड का इस्तेमाल करके फ़ेच किया जा सकता है।
theme.jsया उसके बराबर की फ़ाइलen.default.json
चरण:
अपने Shopify एडमिन से, ऑनलाइन स्टोर > थीम पर जाएं।
वह थीम ढूंढें जिसे आप एडिट करना चाहते हैं, एक्शन मेनू खोलने के लिए ... बटन पर क्लिक करें और फिर कोड एडिट करें पर क्लिक करें।
theme.jsफ़ाइल खोलें।फ़ाइल के नीचे एक नई लाइन बनाएं और फिर निम्नलिखित कोड जोड़ें:
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;
});- सेव करें पर क्लिक करें।
वॉल्यूम प्राइसिंग
Liquid वॉल्यूम प्राइसिंग कोड जोड़ें
वॉल्यूम प्राइसिंग दिखाने के लिए आप अपनी थीम में निम्नलिखित फ़ाइलों में कोड जोड़ सकते हैं:
main-product.liquidया उसके बराबर की फ़ाइलfeatured-product.liquidया उसके बराबर की फ़ाइल
चरण:
अपने Shopify एडमिन से, ऑनलाइन स्टोर > थीम पर जाएं।
वह थीम ढूंढें जिसे आप एडिट करना चाहते हैं, एक्शन मेनू खोलने के लिए ... बटन पर क्लिक करें और फिर कोड एडिट करें पर क्लिक करें।
वह फ़ाइल खोलें जिसे आप एडिट करना चाहते हैं।
फ़ाइल के नीचे एक नई लाइन बनाएं और फिर निम्नलिखित कोड जोड़ें:
{%- if product.quantity_price_breaks_configured? -%}
<div class="volume-pricing-note">
<span>{{ 'products.product.volume_pricing.note' | t }}</span>
</div>
<volume-pricing class="parent-display" id="Volume-{{ section.id }}">
{%- if product.selected_or_first_available_variant.quantity_price_breaks.size > 0 -%}
<span class="caption-large">{{ 'products.product.volume_pricing.title' | t }}</span>
<ul class="list-unstyled no-js-hidden">
<li>
<span>{{ product.selected_or_first_available_variant.quantity_rule.min }}+</span>
{%- assign price = product.selected_or_first_available_variant.price
| money_with_currency
-%}
<span data-text="{{ 'products.product.volume_pricing.price_at_each' | t: price: variant_price }}">
{{ 'sections.quick_order_list.each' | t: money: price -}}
</span>
</li>
{%- for price_break in product.selected_or_first_available_variant.quantity_price_breaks -%}
{%- assign price_break_price = price_break.price | money_with_currency -%}
<li class="{%- if forloop.index >= 3 -%}show-more-item hidden{%- endif -%}">
<span>
{{- price_break.minimum_quantity -}}
<span aria-hidden="true">+</span></span
>
{%- assign price = price_break.price | money_with_currency -%}
<span data-text="{{ 'products.product.volume_pricing.price_at_each' | t: price: price_break_price }}">
{{ 'sections.quick_order_list.each' | t: money: price -}}
</span>
</li>
{%- endfor -%}
</ul>
{%- if product.selected_or_first_available_variant.quantity_price_breaks.size >= 3 -%}
<show-more-button>
<button
class="button-show-more link underlined-link no-js-hidden"
id="Show-More-{{ section.id }}"
type="button"
>
<span class="label-show-more label-text"
><span aria-hidden="true">+ </span>{{ 'products.facets.show_more' | t }}
</span>
</button>
</show-more-button>
{%- endif -%}
{%- endif -%}
</volume-pricing>
{%- endif -%}- सेव करें पर क्लिक करें।
Javascript वॉल्यूम प्राइसिंग कोड जोड़ें
वॉल्यूम प्राइसिंग दिखाने के लिए आप अपनी थीम में निम्नलिखित फ़ाइल में कोड जोड़ सकते हैं:
theme.js
चरण:
अपने Shopify एडमिन से, ऑनलाइन स्टोर > थीम पर जाएं।
वह थीम ढूंढें जिसे आप एडिट करना चाहते हैं, एक्शन मेनू खोलने के लिए ... बटन पर क्लिक करें और फिर कोड एडिट करें पर क्लिक करें।
theme.jsफ़ाइल खोलें।फ़ाइल के नीचे एक नई लाइन बनाएं और फिर निम्नलिखित कोड जोड़ें:
if (!customElements.get('show-more-button')) {
customElements.define(
'show-more-button',
class ShowMoreButton extends HTMLElement {
constructor() {
super();
const button = this.querySelector('button');
button.addEventListener('click', (event) => {
this.expandShowMore(event);
const nextElementToFocus = event.target
.closest('.parent-display')
.querySelector('.show-more-item');
if (
nextElementToFocus &&
!nextElementToFocus.classList.contains('hidden') &&
nextElementToFocus.querySelector('input')
) {
nextElementToFocus.querySelector('input').focus();
}
});
}
expandShowMore(event) {
const parentDisplay = event.target
.closest('[id^="Show-More-"]')
.closest('.parent-display');
const parentWrap = parentDisplay.querySelector('.parent-wrap');
this.querySelectorAll('.label-text').forEach((element) =>
element.classList.toggle('hidden'),
);
parentDisplay
.querySelectorAll('.show-more-item')
.forEach((item) => item.classList.toggle('hidden'));
if (!this.querySelector('.label-show-less')) {
this.classList.add('hidden');
}
}
},
);
}- सेव करें पर क्लिक करें।
स्थानीय भाषाएं जोड़ें
यह पक्का करने के लिए कि मात्रा के नियम और वॉल्यूम प्राइसिंग आपके ऑनलाइन स्टोर के सभी अनुवादित वर्शन पर दिखें, आप अपनी en.default.json फ़ाइल में निम्नलिखित JSON अनुवाद स्ट्रिंग जोड़कर स्थानीय भाषाएं जोड़ सकते हैं।
चरण:
अपने Shopify एडमिन से, ऑनलाइन स्टोर > थीम पर जाएं।
वह थीम ढूंढें जिसे आप एडिट करना चाहते हैं, एक्शन मेनू खोलने के लिए ... बटन पर क्लिक करें और फिर कोड एडिट करें पर क्लिक करें।
en.default.jsonफ़ाइल खोलें।फ़ाइल के नीचे एक नई लाइन बनाएं और फिर निम्नलिखित कोड जोड़ें:
"products": {
"product": {
"volume_pricing": {
"title": "Volume Pricing",
"note": "Volume pricing available",
"price_at_each": "at /ea"
}
"facets": {
"show_more": "Show more"
}
}
}- सेव करें पर क्लिक करें।