Liquid, JavaScript, Themes
Ich möchte einen Live-Counter auf meiner Shopify-Seite erstellen, der anzeigt, wie viel Geld bereits gespendet wurde. Ich möchte meinen Kunden volle Transparenz bieten, sodass sie sofort sehen können, wie viel Geld schon gesammelt wurde. Der Counter soll so gestaltet sein, dass nach jeder Bestellung ein Prozentsatz des Bestellwertes direkt zum Counter hinzugefügt wird. Ist das möglich? Gibt es dafür eine App oder muss ich selbst etwas programmieren? Vielen Dank für die Hilfe 🙂
Gelöst! Zur Lösung
Erfolg.
Hey @JustSmile
Danke für die Angaben und du möchtest praktisch die Gesamtsumme der Spenden anzeigen, wie z. B. auf einer GoFundme Seite:
So einfach wird das nicht sein, denn du müsstet diese Kennzahlen über dem Shopify Admin API ziehen und dadurch im Frontend anzeigen (siehe den Order TotalValueofTips Objekt hier) ggf. mit einem Metafeld (mehr dazu weiter unten).
Wenn du es selber programmieren möchtest dann bitte immer in einer Themekopie/Testumgebung zuerst testen und zusammen mit einem Experten/Programmierer. Du kannst ein Backup deines Themes erstellen, bevor man den Code bearbeitet, oder den Code wiederherstellen, falls dies nötig sein sollte. Du könntest auch einen unserer Experten engagieren indem du denen eine E-Mail rüberschießt. Unsere Experten antworten meist sehr schnell.
Änderungen zu deinem Theme Code können auch 1) die Page Loading Speeds negativ beeinflussen und 2) dein Theme aus den Theme Updates ausschließen. Das folgende ist Theme-abhängig, ohne Gewähr und dient lediglich dazu dich in die richtige Richtung zu weisen!
Zuerst müsstet du die gesammelten Trinkgelder/Tips/Spenden vom Shopify Admin API extrahieren und dann per einem Metafeld oder JS Coding im Frontend Theme ausweisen.
Um die Summe aller Spenden (oder Tips) über die Shopify Admin API mit dem totalTip
Money-Objekt zu erhalten, musst du im Wesentlichen die Bestellungen aus deinem Shop abrufen und die totalTip
-Werte dieser Bestellungen zusammenfassen.
Hier sind ein paar Beispiele wie du das erreichen kann zusammen mit einem unserer Shopify Experten. Gerne kann ich welche empfehlen hier.
Apps
> Private Apps verwalten
.Verwende die Shopify Admin API, um alle Bestellungen abzurufen, wie folgt dass du unseren Developer Documentation entnehmen kannst:
curl -X GET "https://DEIN_SHOP_NAME.myshopify.com/admin/api/2022-07/orders.json" \
-H "X-Shopify-Access-Token: DEIN_API_PASSWORT"
Achte darauf, den Endpoint DEIN_SHOP_NAME.myshopify.com
und DEIN_API_PASSWORT
durch deine tatsächlichen Werte zu ersetzen.
Extrahiere den totalTip
Wert aus jeder Bestellung und summiere diese Werte, um die Gesamtsumme der Trinkgelder zu erhalten. Dies kann in einer Programmiersprache deiner Wahl durchgeführt werden.
Beispiel:
import requests
# API-Details
shop_url = "https://DEIN_SHOP_NAME.myshopify.com/admin/api/2022-07/orders.json"
headers = {
"X-Shopify-Access-Token": "DEIN_API_PASSWORT"
}
# Bestellungen abrufen
response = requests.get(shop_url, headers=headers)
orders = response.json().get('orders', [])
# Spenden (Tips) zusammenfassen
total_tips = sum(order.get('total_tip', 0) for order in orders)
print(f"Gesamtsumme der Spenden: {total_tips}")
Jetzt, wo du die Gesamtsumme der Spenden hast, kannst du sie in deinem Shopify-Store anzeigen. Dies kann entweder durch eine benutzerdefinierte App oder durch das Einfügen von benutzerdefiniertem Liquid-Code in dein Theme erfolgen, abhängig von deinem spezifischen Anwendungsfall und deinen technischen Fähigkeiten.
Bitte beachte, dass das Abrufen aller Bestellungen, insbesondere wenn du viele Bestellungen in deinem Shop hast, einige Zeit in Anspruch nehmen kann. Es könnte sinnvoll sein, diesen Vorgang zu optimieren oder nur in regelmäßigen Abständen auszuführen, um die API-Rate-Limits von Shopify nicht zu überschreiten.
Metafelder in Shopify ermöglichen es dir, zusätzliche benutzerdefinierte Daten zu verschiedenen Ressourcen wie Produkten, Bestellungen, Kunden usw. hinzuzufügen. Wenn du die gesammelte Summe der Spenden in einem Metafeld speichern möchtest, kannst du die Shopify Admin API verwenden, um ein solches Metafeld zu erstellen und dann zu aktualisieren. Hier ist, wie du das machen kannst:
Zuerst musst du ein Metafeld definieren. Dies kann über die Shopify-Admin-Oberfläche oder über die API erfolgen.
Um ein Metafeld über die API für einen Shop zu definieren, kannst du den folgenden Endpunkt verwenden:
POST /admin/api/2022-07/metafields.json
Mit einem JSON-Body, der in etwa so aussieht:
{
"metafield": {
"namespace": "custom_data",
"key": "total_tips",
"value": "0",
"value_type": "integer",
"description": "Gesamtbetrag der Spenden"
}
}
Nachdem du die Spendensumme berechnet hast (wie im vorherigen Antwort beschrieben), kannst du das Metafeld aktualisieren, um den neuesten Wert zu speichern.
PUT /admin/api/2022-07/metafields/{metafield_id}.json
Mit einem JSON-Body:
{
"metafield": {
"id": {metafield_id},
"value": "{neuer_wert}"
}
}
Ersetze {metafield_id}
durch die ID des Metafelds und {neuer_wert}
durch die berechnete Summe der Spenden.
Nachdem das Metafeld aktualisiert wurde, kannst du seinen Wert in deinem Shopify-Store anzeigen. Verwende dazu die Liquid-Syntax in deinem Theme:
{% assign total_tips = shop.metafields.custom_data.total_tips %}
{{ total_tips }}
Stelle sicher, dass du den richtigen Namespace und Schlüssel aus dem von dir definierten Metafeld verwendest.
Um den Prozess zu automatisieren, könntest du eine benutzerdefinierte App oder ein Skript erstellen, das regelmäßig die Trinkgeldsumme berechnet und das Metafeld aktualisiert. Beachte jedoch die API-Rate-Limits von Shopify und optimiere gegebenenfalls deinen Code, um diese Limits nicht zu überschreiten.
Hoffe das hilft dir weiter! 😉
Gabe | Social Care @ Shopify
- War meine Antwort hilfreich? Klicke Like um es mich wissen zu lassen!
- Wurde deine Frage beantwortet? Markiere es als Akzeptierte Lösung
- Um mehr zu erfahren, besuche das Shopify Help Center oder den Shopify Blog
Erfolg.
Hey @JustSmile
Danke für die Angaben und du möchtest praktisch die Gesamtsumme der Spenden anzeigen, wie z. B. auf einer GoFundme Seite:
So einfach wird das nicht sein, denn du müsstet diese Kennzahlen über dem Shopify Admin API ziehen und dadurch im Frontend anzeigen (siehe den Order TotalValueofTips Objekt hier) ggf. mit einem Metafeld (mehr dazu weiter unten).
Wenn du es selber programmieren möchtest dann bitte immer in einer Themekopie/Testumgebung zuerst testen und zusammen mit einem Experten/Programmierer. Du kannst ein Backup deines Themes erstellen, bevor man den Code bearbeitet, oder den Code wiederherstellen, falls dies nötig sein sollte. Du könntest auch einen unserer Experten engagieren indem du denen eine E-Mail rüberschießt. Unsere Experten antworten meist sehr schnell.
Änderungen zu deinem Theme Code können auch 1) die Page Loading Speeds negativ beeinflussen und 2) dein Theme aus den Theme Updates ausschließen. Das folgende ist Theme-abhängig, ohne Gewähr und dient lediglich dazu dich in die richtige Richtung zu weisen!
Zuerst müsstet du die gesammelten Trinkgelder/Tips/Spenden vom Shopify Admin API extrahieren und dann per einem Metafeld oder JS Coding im Frontend Theme ausweisen.
Um die Summe aller Spenden (oder Tips) über die Shopify Admin API mit dem totalTip
Money-Objekt zu erhalten, musst du im Wesentlichen die Bestellungen aus deinem Shop abrufen und die totalTip
-Werte dieser Bestellungen zusammenfassen.
Hier sind ein paar Beispiele wie du das erreichen kann zusammen mit einem unserer Shopify Experten. Gerne kann ich welche empfehlen hier.
Apps
> Private Apps verwalten
.Verwende die Shopify Admin API, um alle Bestellungen abzurufen, wie folgt dass du unseren Developer Documentation entnehmen kannst:
curl -X GET "https://DEIN_SHOP_NAME.myshopify.com/admin/api/2022-07/orders.json" \
-H "X-Shopify-Access-Token: DEIN_API_PASSWORT"
Achte darauf, den Endpoint DEIN_SHOP_NAME.myshopify.com
und DEIN_API_PASSWORT
durch deine tatsächlichen Werte zu ersetzen.
Extrahiere den totalTip
Wert aus jeder Bestellung und summiere diese Werte, um die Gesamtsumme der Trinkgelder zu erhalten. Dies kann in einer Programmiersprache deiner Wahl durchgeführt werden.
Beispiel:
import requests
# API-Details
shop_url = "https://DEIN_SHOP_NAME.myshopify.com/admin/api/2022-07/orders.json"
headers = {
"X-Shopify-Access-Token": "DEIN_API_PASSWORT"
}
# Bestellungen abrufen
response = requests.get(shop_url, headers=headers)
orders = response.json().get('orders', [])
# Spenden (Tips) zusammenfassen
total_tips = sum(order.get('total_tip', 0) for order in orders)
print(f"Gesamtsumme der Spenden: {total_tips}")
Jetzt, wo du die Gesamtsumme der Spenden hast, kannst du sie in deinem Shopify-Store anzeigen. Dies kann entweder durch eine benutzerdefinierte App oder durch das Einfügen von benutzerdefiniertem Liquid-Code in dein Theme erfolgen, abhängig von deinem spezifischen Anwendungsfall und deinen technischen Fähigkeiten.
Bitte beachte, dass das Abrufen aller Bestellungen, insbesondere wenn du viele Bestellungen in deinem Shop hast, einige Zeit in Anspruch nehmen kann. Es könnte sinnvoll sein, diesen Vorgang zu optimieren oder nur in regelmäßigen Abständen auszuführen, um die API-Rate-Limits von Shopify nicht zu überschreiten.
Metafelder in Shopify ermöglichen es dir, zusätzliche benutzerdefinierte Daten zu verschiedenen Ressourcen wie Produkten, Bestellungen, Kunden usw. hinzuzufügen. Wenn du die gesammelte Summe der Spenden in einem Metafeld speichern möchtest, kannst du die Shopify Admin API verwenden, um ein solches Metafeld zu erstellen und dann zu aktualisieren. Hier ist, wie du das machen kannst:
Zuerst musst du ein Metafeld definieren. Dies kann über die Shopify-Admin-Oberfläche oder über die API erfolgen.
Um ein Metafeld über die API für einen Shop zu definieren, kannst du den folgenden Endpunkt verwenden:
POST /admin/api/2022-07/metafields.json
Mit einem JSON-Body, der in etwa so aussieht:
{
"metafield": {
"namespace": "custom_data",
"key": "total_tips",
"value": "0",
"value_type": "integer",
"description": "Gesamtbetrag der Spenden"
}
}
Nachdem du die Spendensumme berechnet hast (wie im vorherigen Antwort beschrieben), kannst du das Metafeld aktualisieren, um den neuesten Wert zu speichern.
PUT /admin/api/2022-07/metafields/{metafield_id}.json
Mit einem JSON-Body:
{
"metafield": {
"id": {metafield_id},
"value": "{neuer_wert}"
}
}
Ersetze {metafield_id}
durch die ID des Metafelds und {neuer_wert}
durch die berechnete Summe der Spenden.
Nachdem das Metafeld aktualisiert wurde, kannst du seinen Wert in deinem Shopify-Store anzeigen. Verwende dazu die Liquid-Syntax in deinem Theme:
{% assign total_tips = shop.metafields.custom_data.total_tips %}
{{ total_tips }}
Stelle sicher, dass du den richtigen Namespace und Schlüssel aus dem von dir definierten Metafeld verwendest.
Um den Prozess zu automatisieren, könntest du eine benutzerdefinierte App oder ein Skript erstellen, das regelmäßig die Trinkgeldsumme berechnet und das Metafeld aktualisiert. Beachte jedoch die API-Rate-Limits von Shopify und optimiere gegebenenfalls deinen Code, um diese Limits nicht zu überschreiten.
Hoffe das hilft dir weiter! 😉
Gabe | Social Care @ Shopify
- War meine Antwort hilfreich? Klicke Like um es mich wissen zu lassen!
- Wurde deine Frage beantwortet? Markiere es als Akzeptierte Lösung
- Um mehr zu erfahren, besuche das Shopify Help Center oder den Shopify Blog
Mit dem Lernpfad der Shopify Academy und dem Verified Skills-Badge Expanding Your Sho...
By Shopify Feb 7, 2025Den Verkauf im Großhandel steigern: In der Shopify Academy lernst du, wie das geht, zum...
By Shopify Feb 3, 2025Teil 2 - Wie die Prinzipien des UX-Designs dir dabei helfen können einen großartigen Shop ...
By Kai Sep 16, 2024