SKU-nummers op productpagina's tonen
SKU's (voorraadeenheden) zijn getallen, meestal alfanumerieke, die worden gebruikt om producten te identificeren en voorraad bij te houden. Als een winkel SKU's gebruikt, wordt aan elke afzonderlijke productvariant een uniek nummer toegewezen. Je kunt SKU-nummers voor varianten op je productpagina's tonen door je themacode te bewerken:
![Voorbeeld van SKU-variant](https://cdn.shopify.com/shopifycloud/help/assets/manual/customize/variant-sku-show-bc4b3dd9b24eb3a0d0bb04ead67183f8cffd3ed580bd2afa79973642261b975d.gif)
Thema's met en zonder secties
Stappen voor thema's met secties
SKU-nummers op productpagina's tonen
Ga in het Shopify-beheercentrum naar webshop > Thema's.
Zoek het thema dat je wilt bewerken, klik op de knop … om het actiemenu te openen en klik vervolgens op Code bewerken.
Klik in de directory Secties op
product.liquid
ofproduct-template.liquid
.Zoek de volgende Liquid-tag:
{{ product.title }}
Dit is de code die je producttitels op de productpagina weergeeft.
- Plak de volgende code op een nieuwe regel onder de regel met code
{{ product.title }}
:
{% assign current_variant = product.selected_or_first_available_variant %}
<span class="variant-sku">{{ current_variant.sku }}</span>
- Klik op Opslaan.
Je thema selecteren
De stappen voor deze aanpassing variëren naargelang je thema. Klik op de knop van je thema en volg de instructies.
Boundless
Stappen voor Boundless
- Klik in de directory Assets op
theme.js.liquid
. -
Zoek naar
variant.sku
:- Als je
variant.sku
kunt vinden, heb je de aanpassing voltooid. - Als je
variant.sku
niet kunt vinden, ga je verder met de volgende stap.
- Als je
Plak onderin het bestand de volgende code:
document.addEventListener('DOMContentLoaded', () => {
setTimeout(function() {
const productJson = [...document.querySelectorAll('[id^=ProductJson-')];
if (productJson.length > 0) {
productJson.forEach((product) => {
const sectionId = product.id.replace("ProductJson-", "shopify-section-");
const variantSKU = document.querySelector('#' + sectionId + ' .variant-sku');
const inputSelects = [...document.querySelectorAll('#' + sectionId + ' .single-option-selector')];
const productInfo = JSON.parse(product.innerHTML);
const inputValues = [];
const optionValues = [];
let count = 0;
inputSelects.forEach((input) => {
inputValues.push(input.value);
optionValues.push(count);
input.addEventListener('change', (evt) => {
const currentValue = evt.currentTarget.value.toString();
const changedIndex = inputSelects.indexOf(evt.target);
inputValues[changedIndex] = currentValue;
variantSKU.innerText = ' ';
productInfo.variants.forEach((variant) => {
if (JSON.stringify(variant.options) == JSON.stringify(inputValues)) {
variantSKU.innerText = variant.sku;
}
});
});
count += 1;
});
});
}
}, 100);
});
- Klik op Opslaan.
Brooklyn
Stappen voor Brooklyn
- Klik in de directory Assets op
theme.js.liquid
. -
Zoek naar
variant.sku
:- Als je
variant.sku
kunt vinden, heb je de aanpassing voltooid. - Als je
variant.sku
niet kunt vinden, ga je verder met de volgende stap.
- Als je
Plak onderin het bestand de volgende code:
document.addEventListener('DOMContentLoaded', () => {
const productJson = [...document.querySelectorAll('[id^=ProductJson-')];
if (productJson.length > 0) {
productJson.forEach((product) => {
const sectionId = product.id.replace("ProductJson-", "shopify-section-");
const variantSKU = document.querySelector('#' + sectionId + ' .variant-sku');
const productInfo = JSON.parse(product.innerHTML);
const radioButtons = document.querySelector('.single-option-radio');
let inputSelects;
if (radioButtons !== null) {
inputSelects = [...document.querySelectorAll('#' + sectionId + ' .single-option-radio')];
} else {
inputSelects = [...document.querySelectorAll('#' + sectionId + ' .single-option-selector__radio')];
}
const inputValues = [];
const optionValues = [];
let count = 0;
inputSelects.forEach((input) => {
if (radioButtons !== null) {
inputValues.push(input.firstElementChild.value);
} else {
inputValues.push(input.value);
}
optionValues.push(count);
input.addEventListener('change', (evt) => {
const currentValue = evt.target.value.toString();
const changedIndex = inputSelects.indexOf(evt.currentTarget);
inputValues[changedIndex] = currentValue;
variantSKU.innerText = ' ';
productInfo.variants.forEach((variant) => {
if (JSON.stringify(variant.options) == JSON.stringify(inputValues)) {
variantSKU.innerText = variant.sku;
}
});
});
count += 1;
});
});
}
});
- Klik op Opslaan.
Debut
Stappen voor Debut
- Klik in de directory Assets op
theme.js
. -
Zoek naar
variant.sku
:- Als je
variant.sku
kunt vinden, heb je de aanpassing voltooid. - Als je
variant.sku
niet kunt vinden, ga je verder met de volgende stap.
- Als je
Plak onderin het bestand de volgende code:
document.addEventListener('DOMContentLoaded', () => {
const productJson = [...document.querySelectorAll('[id^=ProductJson-')];
if (productJson.length > 0) {
productJson.forEach((product) => {
const sectionId = product.id.replace("ProductJson-", "shopify-section-");
const variantSKU = document.querySelector('#' + sectionId + ' .variant-sku');
const inputSelects = [...document.querySelectorAll('#' + sectionId + ' .single-option-selector')];
const productInfo = JSON.parse(product.innerHTML);
const inputValues = [];
const optionValues = [];
let count = 0;
inputSelects.forEach((input) => {
inputValues.push(input.value);
optionValues.push(count);
input.addEventListener('change', (evt) => {
const currentValue = evt.currentTarget.value.toString();
const changedIndex = inputSelects.indexOf(evt.target);
inputValues[changedIndex] = currentValue;
variantSKU.innerText = ' ';
productInfo.variants.forEach((variant) => {
if (JSON.stringify(variant.options) == JSON.stringify(inputValues)) {
variantSKU.innerText = variant.sku;
}
});
});
count += 1;
});
});
}
});
- Klik op Opslaan.
Express
Stappen voor Express
- Klik in de directory Opmaak op
theme.liquid
. -
Zoek de sluitende tag
</body>
. - Plak de volgende code op een regel direct boven de sluitende tag
</body>
:
<script>
document.addEventListener('DOMContentLoaded', () => {
const productJson = [...document.querySelectorAll('[data-product-json]')];
if (productJson.length > 0) {
productJson.forEach((product) => {
const sectionId = "shopify-section-" + product.closest('[data-section-id]').dataset.sectionId;
const variantSKU = document.querySelector('#' + sectionId + ' .variant-sku');
const inputSelects = [...document.querySelectorAll('#' + sectionId + ' .form__input--select')];
const productInfo = JSON.parse(product.innerHTML);
const inputValues = [];
const optionValues = [];
let count = 0;
inputSelects.forEach((input) => {
inputValues.push(input.value);
optionValues.push(count);
input.addEventListener('change', (evt) => {
const currentValue = evt.currentTarget.value.toString();
const changedIndex = inputSelects.indexOf(evt.target);
inputValues[changedIndex] = currentValue;
variantSKU.innerText = ' ';
productInfo.variants.forEach((variant) => {
if (JSON.stringify(variant.options) == JSON.stringify(inputValues)) {
variantSKU.innerText = variant.sku;
}
});
});
count += 1;
});
});
}
});
</script>
- Klik op Opslaan.
Minimal
Stappen voor Minimal
- Klik in de directory Assets op
theme.js
. -
Zoek naar
variant.sku
:- Als je
variant.sku
kunt vinden, heb je de aanpassing voltooid. - Als je
variant.sku
niet kunt vinden, ga je verder met de volgende stap.
- Als je
Plak onderin het bestand de volgende code:
document.addEventListener('DOMContentLoaded', () => {
const productJson = [...document.querySelectorAll('[id^=ProductJson-')];
if (productJson.length > 0) {
productJson.forEach((product) => {
const sectionId = product.id.replace("ProductJson-", "shopify-section-");
const variantSKU = document.querySelector('#' + sectionId + ' .variant-sku');
const inputSelects = [...document.querySelectorAll('#' + sectionId + ' .single-option-selector')];
const productInfo = JSON.parse(product.innerHTML);
const inputValues = [];
const optionValues = [];
let count = 0;
inputSelects.forEach((input) => {
inputValues.push(input.value);
optionValues.push(count);
input.addEventListener('change', (evt) => {
const currentValue = evt.currentTarget.value.toString();
const changedIndex = inputSelects.indexOf(evt.target);
inputValues[changedIndex] = currentValue;
variantSKU.innerText = ' ';
productInfo.variants.forEach((variant) => {
if (JSON.stringify(variant.options) == JSON.stringify(inputValues)) {
variantSKU.innerText = variant.sku;
}
});
});
count += 1;
});
});
}
});
- Klik op Opslaan.
Narrative
Stappen voor Narrative
- Klik in de directory Assets op
custom.js
. - Plak onderin het bestand de volgende code:
document.addEventListener('DOMContentLoaded', () => {
const productJson = [...document.querySelectorAll('[data-product-json]')];
if (productJson.length > 0) {
productJson.forEach((product) => {
const sectionId = "shopify-section-" + product.closest('[data-section-id]').dataset.sectionId;
const variantSKU = document.querySelector('#' + sectionId + ' .variant-sku');
const inputSelects = [...document.querySelectorAll('#' + sectionId + ' .single-option-selector')];
const productInfo = JSON.parse(product.innerHTML);
const inputValues = [];
const optionValues = [];
let count = 0;
inputSelects.forEach((input) => {
inputValues.push(input.value);
optionValues.push(count);
input.addEventListener('change', (evt) => {
const currentValue = evt.currentTarget.value.toString();
const changedIndex = inputSelects.indexOf(evt.target);
inputValues[changedIndex] = currentValue;
variantSKU.innerText = ' ';
productInfo.variants.forEach((variant) => {
if (JSON.stringify(variant.options) == JSON.stringify(inputValues)) {
variantSKU.innerText = variant.sku;
}
});
});
count += 1;
});
});
}
});
- Klik op Opslaan.
Simple
Stappen voor Simple
- Klik in de directory Assets op
theme.js.liquid
. -
Zoek naar
variant.sku
:- Als je
variant.sku
kunt vinden, heb je de aanpassing voltooid. - Als je
variant.sku
niet kunt vinden, ga je verder met de volgende stap.
- Als je
Plak onderin het bestand de volgende code:
document.addEventListener('DOMContentLoaded', () => {
const productJson = [...document.querySelectorAll('[id^=ProductJson-')];
if (productJson.length > 0) {
productJson.forEach((product) => {
const sectionId = product.id.replace("ProductJson-", "shopify-section-");
const variantSKU = document.querySelector('#' + sectionId + ' .variant-sku');
const inputSelects = [...document.querySelectorAll('#' + sectionId + ' .single-option-selector')];
const productInfo = JSON.parse(product.innerHTML);
const inputValues = [];
const optionValues = [];
let count = 0;
inputSelects.forEach((input) => {
inputValues.push(input.value);
optionValues.push(count);
input.addEventListener('change', (evt) => {
const currentValue = evt.currentTarget.value.toString();
const changedIndex = inputSelects.indexOf(evt.target);
inputValues[changedIndex] = currentValue;
variantSKU.innerText = ' ';
productInfo.variants.forEach((variant) => {
if (JSON.stringify(variant.options) == JSON.stringify(inputValues)) {
variantSKU.innerText = variant.sku;
}
});
});
count += 1;
});
});
}
});
- Klik op Opslaan.
Supply
Stappen voor Supply
- Klik in de directory Assets op
theme.js.liquid
. -
Zoek naar
variant.sku
:- Als je
variant.sku
kunt vinden, heb je de aanpassing voltooid. - Als je
variant.sku
niet kunt vinden, ga je verder met de volgende stap.
- Als je
Plak onderin het bestand de volgende code:
document.addEventListener('DOMContentLoaded', () => {
const productJson = [...document.querySelectorAll('[id^=ProductJson-')];
if (productJson.length > 0) {
productJson.forEach((product) => {
const sectionId = product.id.replace("ProductJson-", "shopify-section-");
const variantSKU = document.querySelector('#' + sectionId + ' .variant-sku');
const inputSelects = [...document.querySelectorAll('#' + sectionId + ' .single-option-selector')];
const productInfo = JSON.parse(product.innerHTML);
const inputValues = [];
const optionValues = [];
let count = 0;
inputSelects.forEach((input) => {
inputValues.push(input.value);
optionValues.push(count);
input.addEventListener('change', (evt) => {
const currentValue = evt.currentTarget.value.toString();
const changedIndex = inputSelects.indexOf(evt.target);
inputValues[changedIndex] = currentValue;
variantSKU.innerText = ' ';
productInfo.variants.forEach((variant) => {
if (JSON.stringify(variant.options) == JSON.stringify(inputValues)) {
variantSKU.innerText = variant.sku;
}
});
});
count += 1;
});
});
}
});
- Klik op Opslaan.
Venture
Stappen voor Venture
- Klik in de directory Assets op
theme.js
. -
Zoek naar
variant.sku
:- Als je
variant.sku
kunt vinden, heb je de aanpassing voltooid. - Als je
variant.sku
niet kunt vinden, ga je verder met de volgende stap.
- Als je
Plak onderin het bestand de volgende code:
document.addEventListener('DOMContentLoaded', () => {
const productJson = [...document.querySelectorAll('[id^=ProductJson-')];
if (productJson.length > 0) {
productJson.forEach((product) => {
const sectionId = product.id.replace("ProductJson-", "shopify-section-");
const variantSKU = document.querySelector('#' + sectionId + ' .variant-sku');
const inputSelects = [...document.querySelectorAll('#' + sectionId + ' .single-option-selector')];
const productInfo = JSON.parse(product.innerHTML);
const inputValues = [];
const optionValues = [];
let count = 0;
inputSelects.forEach((input) => {
inputValues.push(input.value);
optionValues.push(count);
input.addEventListener('change', (evt) => {
const currentValue = evt.currentTarget.value.toString();
const changedIndex = inputSelects.indexOf(evt.target);
inputValues[changedIndex] = currentValue;
variantSKU.innerText = ' ';
productInfo.variants.forEach((variant) => {
if (JSON.stringify(variant.options) == JSON.stringify(inputValues)) {
variantSKU.innerText = variant.sku;
}
});
});
count += 1;
});
});
}
});
- Klik op Opslaan.
SKU-nummers toevoegen aan je productvarianten vanuit het beheercentrum
Om SKU's op je productpagina's te laten verschijnen, moet je SKU-nummers toevoegen aan je productvarianten vanuit het Shopify-beheercentrum.
Ga vanaf je Shopify-beheercentrum naar Producten.
Klik op het product dat je wilt bewerken.
Voeg in het gedeelte Varianten je SKU-nummers toe voor producten met meerdere varianten:
Klik op Opslaan.
Stappen voor thema's zonder secties
SKU-nummers op productpagina's tonen
Stappen:
Ga in het Shopify-beheercentrum naar webshop > Thema's.
Zoek het thema dat je wilt bewerken, klik op de knop … om het actiemenu te openen en klik vervolgens op Code bewerken.
Klik op
product.liquid
in de directory Templates.Zoek de volgende Liquid-tag:
{{ product.title }}
Dit is de code die je producttitels op de productpagina weergeeft.
- Plak het volgende op een nieuwe regel onder de regel code die
{{ product.title }}
bevat:
{% assign current_variant = product.selected_or_first_available_variant %}
<span class="variant-sku">{{ current_variant.sku }}</span>
- Klik op Opslaan.
- Als je een ander gratis Shopify-thema gebruikt dan Brooklyn of Venture, zoek je de volgende coderegel:
var selectCallback = function(variant, selector) {
Als je de bovenstaande coderegel niet in de product.liquid
kunt vinden, dan vind je deze in theme.liquid
, in de directory Opmaak.
-
Brooklyn en Venture: Als je Brooklyn of Venture gebruikt, zoek dan een andere coderegel en bewerk deze. Klik in de directory Elementen op
theme.js.liquid
en zoek de volgende coderegel:
theme.productVariantCallback = function (variant, selector) {
- Plak de volgende code op een nieuwe regel hieronder:
if (variant) {
document.querySelector('.variant-sku').innerText = variant.sku;
}
else {
document.querySelector('.variant-sku').innerText = '';
}
Je code zou er als dit uit moeten zien:
var selectCallback = function(variant, selector) {
if (variant) {
document.querySelector('.variant-sku').innerText = variant.sku;
}
else {
document.querySelector('.variant-sku').innerText = '';
}
self.productPage({
money_format: theme.moneyFormat,
variant: variant,
selector: selector,
translations: {
add_to_cart : theme.productStrings.addToCart,
sold_out : theme.productStrings.soldOut,
unavailable : theme.productStrings.unavailable
}
});
};
- Klik op Opslaan.
SKU-nummers toevoegen aan je productvarianten vanuit het beheercentrum
Om SKU's op je productpagina's te laten verschijnen, moet je SKU-nummers toevoegen aan je productvarianten vanuit het Shopify-beheercentrum.
Ga vanaf je Shopify-beheercentrum naar Producten.
Klik op het product dat je wilt bewerken.
Voor producten met meerdere varianten voeg je in de sectie Varianten de SKU-nummers toe:
Voor producten zonder varianten voeg je in de sectie Voorraad het SKU-nummer toe:Klik op Opslaan.