Shopify liquid: Wie kann ich Snippets in Shopify liquid bedingt einbinden?

8

Ich möchte ein Snippet in eine Vorlage einfügen, aber nur, wenn die Snippet-Datei existiert. Kann ich es irgendwie tun?

Jetzt benutze ich nur:

%Vor%

Aber das wirft den Fehler:

%Vor%

Der Grund, warum ich eine solche Funktionalität brauche, ist, weil ich einen Hintergrundprozess habe, der das Snippet später hinzufügt.

    
vovafeldman 02.02.2013, 22:37
quelle

4 Antworten

18

Hatte dieses Problem selbst. Das war meine Lösung:

%Vor%

Erfassen Sie den Inhalt des Snippets grundsätzlich als Variable. Wenn kein Snippet vorhanden ist, erzeugt Shopify den Fehler:

  

Flüssiger Fehler: Asset konnte nicht gefunden werden   Schnipsel / Caroline-Feuerstein-reviews.liquid

Überprüfen Sie also, ob es generiert wird ... wenn ja, drucken Sie das Snippet nicht aus : D

Natürlich würde dies kaputt gehen, wenn Sie beabsichtigen, in Ihren Code "Liquid error" aufzunehmen oder wenn Shopify die Fehlermeldung ändern würde.

    
Jon Heslop 26.03.2013, 11:08
quelle
2

Erweitere Jon's Antwort;

Erstellen Sie eine Datei namens snippet.liquid

%Vor%

Wenn Sie eine Datei nur dann einfügen möchten, wenn sie existiert

%Vor%     
a.wmly 08.09.2016 09:33
quelle
0

@vovoveldman Nicht sicher, warum Sie kein leeres Snippet haben können, aber es gibt keine Datei.

Die einzige andere Möglichkeit, die ich mir vorstellen kann, ist, dass Sie einen BG-Prozess verwenden, um das Snippet zu generieren (und ich nehme an, es hochzuladen). Sie können immer die Template-API verwenden, um die Version der Vorlage hochzuladen, die das Snippet enthält zur gleichen Zeit.

    
meeech 03.02.2013 22:08
quelle
0

Alternativ können Sie auch ein eigenes Tag erstellen, das die Existenz der Datei überprüft, bevor Sie versuchen, sie zu verarbeiten.

Ссылка

    
aidan 11.07.2013 03:54
quelle