Hallo zusammen,
ich hänge seit einiger Zeit an einem Problem. Ich möchte eine Tabelle mit Spezifikationen für jede Variante ausgeben. Die Spezifikationen habe ich über Varianten-Metafelder erstellt.
Allerdings finde ich keinen Weg, die Meta-Variantenfelder auszugeben, sodass sie auch angezeigt werden.
So ist z.B. eins gespeichert: custom.stahlsorte
Ich habe viele Möglichkeiten ausprobiert, doch keine funktioniert, z.B.
{{ custom.stahlsorte }}
{{ current_variant.metafields.custom.stahlsorte }} ,…
Die Felder bleiben einfach leer.
Ein zweites Problem ist, dass ich den Liquid Block mit den Varianten-Metafeldern bei der Variantenauswahl vermutlich zum Neuladen zwingen muss. Ich habe diesen Code im global.js hinzugefügt:
ocument.addEventListener('DOMContentLoaded', function() {
const variantRadios = document.querySelectorAll('input[type="radio"]'); // Radio-Buttons für Varianten
if (variantRadios.length > 0) {
variantRadios.forEach(function(radio) {
radio.addEventListener('change', function() {
const selectedVariantId = this.value;
// AJAX-Request, um den Spezifikationsteil der Seite neu zu laden
fetch(`/products/{{ product.handle }}?variant=${selectedVariantId} #variant-specifications`, {
method: 'GET',
headers: {
'X-Requested-With': 'XMLHttpRequest'
}
})
.then(function(response) {
return response.text();
})
.then(function(html) {
// HTML-Teil dynamisch neu laden
const parser = new DOMParser();
const newDocument = parser.parseFromString(html, 'text/html');
const newContent = newDocument.querySelector('#variant-specifications');
document.querySelector('#variant-specifications').innerHTML = newContent.innerHTML;
})
.catch(function(error) {
console.error('Fehler beim Laden der Spezifikationen:', error);
});
});
});
}
});
Auch dieser Teil scheint aktuell nicht zu funktionieren.
Ich arbeite mit Dawn.
Ich danke für Hilfe!
VG
Yannick