FROM CACHE - de_header

Nicht befüllte Metafields in Shopify 2.0 ausblenden

timdraut
Tourist
15 0 1

Hallo Community,

ich frage mich, ob es möglich ist, die Metafields auszublenden, wenn sie keinen Inhalt haben.

Im Shopify 2.0 kann ich sie dankenswerterweise jetzt nutzen.

Ich nutze die Metafields aktuell um meine Produkte mit weiteren INformationen zu versehen (Größe, Material, Designer, Ausführung, etc.).
Doch nicht jedes Produkt hat alle Felder befüllt.

Da ich enorm viele Produkte habe und die Pflege über mein ERP läuft und nicht pro Produkt direkt in Shopify passiert es dann, dass ich in meinem Produkt-Theme alle relevanten Metafields ausgebe,

bei einigen halt jedoch kein INhalt steht.

Dann wäre es schön, wenn man GENERELL die Felder nur anzeigt, wenn sie auch befüllt sind.

Freue mich auf Hilfe dazu.

Beste Grüße

Tim

Screenshot 2021-10-11 105133.jpg

4 ANTWORTEN 4

r8r
Shopify Expert
2555 327 940

@timdraut – hast Du folgendes schon versucht?

{% unless metafields.namespace.key.text == blank %}
  Value: {{ metafields.namespace.key }}
{% endunless %}

LG, Mario

★ Ja, man kann mich buchen; schreib mir eine Nachricht!
★ Hinterlass gerne ein Like und markiere meine Antwort gegebenenfalls als Lösung. Ich freue ich mich immer über eine Spende an die (Kinder)krebshilfe oder eine kleine Aufmerksamkeit.
Studio Mitte
timdraut
Tourist
15 0 1

Hi Mario,

super, danke für Deine schnelle Antwort!
Da ich nur recht bedingt Entwicklungs-Know-How habe: wo würde ich den Code dann genau einsetzen?

 

Ich habe entdeckt, dass bei neu hochgeladenen Produkten im meinem neuen Theme 2.0 das Problem gar nicht mehr auftaucht! Macht auch irgendwie mehr Sinn, finde ich.

Ich hatte vorher im alten Theme eine Metafields-app genutzt, wahrscheinlich wird hier noch bei den damals hochgeladenen Produkten etwas kreiert. ggf. muss ich den alten inhalt der metafields einmal löschen und alle produkte neu hochpushen.... hmm.... auch doof, aber ggf. dann eine saubere lösung ohne zusätzlichen code.

beste grüße

Tim

r8r
Shopify Expert
2555 327 940

@timdraut 

Da ich nur recht bedingt Entwicklungs-Know-How habe: wo würde ich den Code dann genau einsetzen?

Ich kann da nur recht allgemein mit "da, wo der andere Code steht" antworten – auch wenn ich weiss, dass Dir das wahrscheinlich nicht sehr hilft … du musst die .liquid-Datei finden, in der die Metafields abgefragt werden.

Zu Deiner OS 2.0 Frage – da kann ich aus dem Stegreif auch nichts sagen, aber wenn es eine Teil-Lösung ist, dann thumbs up!

LG, Mario

★ Ja, man kann mich buchen; schreib mir eine Nachricht!
★ Hinterlass gerne ein Like und markiere meine Antwort gegebenenfalls als Lösung. Ich freue ich mich immer über eine Spende an die (Kinder)krebshilfe oder eine kleine Aufmerksamkeit.
Studio Mitte
Finer
Shopify Expert
2005 416 716

@timdraut ich vermute, dass selbst die vorgeschlagene Lösung nicht direkt funktionieren wird, dass die Metafield-Werte nicht direkt im Code, sondern als dynamischer Inhalt platziert werden. Somit bleiben eigentlich nur zwei Optionen.

 

1. Du erstellst für die Produkte, bei denen die Metafelder gesetzt werden, ein eigenes Produkt-Template.

Durch das Erstellen eines neuen/zusätzlichen Produkt-Template kannst du den Produkten, für die die Metafelder relevant sind, das entsprechende Template zuweisen. Allen anderen, bei denen du nicht die Metafelder zeigen möchtest, verwenden dann einfach das Standard-Template. Bei dieser Option musst du zu zwar auch in den Code-Editor springen müssen - ist aber mehr eine Copy-and-paste Arbeit und keine Programmierung 😉

 

oder

 

2. Du baust die einen eigene Produkt-Block, der die Funktion enthält: "Wenn Inhalt leer, dann nicht anzeigen" was im Grunde dem Entspricht, was @r8r vorgeschlagen hat.

 

Du kannst ja gerne Bescheid geben, wenn dieses Thema noch für dich relevant ist.

- Did my answer help? Mark my post with a like
- Did I solve your problem? Mark my post as an accepted solution.
- You need professional help? Contact our Shopify Partner Agency