Der Bereich Shopware Labs ist die Plattform für alle Entwickler. Hier findet man technische Dokumentationen und zahlreiche Tipps und Tricks rund um das Thema Programmieren. In dieser Rubrik stellen außerdem die Entwickler der shopware AG neue und experimentelle Lösungsansätze vor. Neue Funktionen, die in dieser Rubrik bereitgestellt werden, sind teilweise auch für zukünftige Releases geplant. Die Funktionen können dann ohne Programmierkenntnisse zukünftig direkt im Shopware Backend konfiguriert werden oder werden über Plugins bereitgestellt. Informationen über neue, geplante Funktionen finden Sie in unserer Roadmap.
Bitte beachten Sie, dass die hier bereitgestellten Lösungsansätze nicht offiziell supportet werden und nur eingebaut werden sollten, sofern Sie über das entsprechende, technische Wissen verfügen.
Die Klasse sArticles
0 KommentareInhaltsverzeichnis
- 1 Eigenschaften
- 1.1 sSYSTEM
- 1.2 sCachePromotions
- 2 Methoden
- 2.1 masort(&$data, $sortby)
- 2.2 sAddComparison($article)
- 2.3 sCalculatingPrice($price,$tax,$article=0)
- 2.4 sCalculatingPriceNum($price,$tax,$considerTax=false, $donotround=false,$article=0)
- 2.5 sCheckIfConfig()
- 2.6 sCheckIfEsd($id,$detailsID)
- 2.7 sCreateTranslationTable()
- 2.8 sDeleteComparison($article)
- 2.9 sDeleteComparisons($article)
- 2.10 sFormatPrice($price)
- 2.11 sGetAffectedSuppliers($id=0)
- 2.12 sGetAllArticlesInCategory($article)
- 2.13 sGetArticleAccessories($id)
- 2.14 sGetArticleById($id=0)
- 2.15 sGetArticleCharts()
- 2.16 sGetArticleConfig($id,$article)
- 2.17 sGetArticleIdByOrderNumber($ordernumber)
- 2.18 sGetArticleNameByOrderNumber($ordernumber)
- 2.19 sGetArticlePictures($sArticleID,$onlyCover=true,$pictureSize,$ordernumber="")
- 2.20 sGetArticleProperties($article,$filtergroupID)
- 2.21 sGetArticlesAverangeVote($article)
- 2.22 sGetArticlesByCategory()
- 2.23 sGetArticlesByChar()
- 2.24 sGetArticlesByName ($orderBy="a.topseller DESC",$category=0,$mode="")
- 2.25 sGetArticlesBySupplier()
- 2.26 sGetArticlesNewest($filterByCategory)
- 2.27 sGetArticlesSnips($filterByCategory)
- 2.28 sGetArticlesVotes($article)
- 2.29 sGetArticleTaxById($id)
- 2.30 sGetCategoryProperties($id=0)
- 2.31 sGetCheapestPrice($article,$group,$pricegroup,$usepricegroups)
- 2.32 sGetComparisons()
- 2.33 sGetLastArticles($sCurrentArticle=0)
- 2.34 sGetPricegroupDiscount($customergroup,$groupID,$listprice,$quantity,$doMatrix=true,$articleData=array())
- 2.35 sGetPromotionById($mode,$category=0,$value=0)
- 2.36 sGetPromotions($category)
- 2.37 sGetSupplierById($id)
- 2.38 sGetTranslation($data,$id,$object,$language)
- 2.39 sGetUnit($id)
- 2.40 sOptimizeText($text)
- 2.41 sRound($moneyfloat = null)
- 2.42 sSaveComment($article))
- 2.43 sSetLastArticle($image,$name,$id))
Eigenschaften
sSYSTEM
Pointer zu der Shopware Core-Klasse
sCachePromotions
Einkaufswelten-Cache
Methoden
masort(&$data, $sortby)
Mehrdimensionales Array sortieren ohne die assoziativen Keys zu zerstören
- data: array Das zu sortierende Array
- sortby: array Key nachdem sortiert werden soll
sAddComparison($article)
Artikel in die Vergleichstabelle einfügen
- article: int s_articles.id
- return: bool true bei Erfolg, ansonsten false
sCalculatingPrice($price,$tax,$article=0)
Artikel-Preis-Berechnung - bezieht Kundengruppen-Rabatte etc. ein und gibt einen formatierten Preis zurück
- price: double Preis
- tax: array MwSt. Satz
- article: double Gibt den formatierten Preis zurück
- Hookpoints:
- sArticles.php_sCalculatingPrice_Start
- sArticles.php_sCalculatingPrice_BeforeEnd
sCalculatingPriceNum($price,$tax,$considerTax=false, $donotround=false,$article=0)
Artikel-Preis-Berechnung - bezieht Kundengruppen-Rabatte etc. ein und gibt einen NICHT formatierten Preis zurück
- price: double Preis
- tax: array MwSt. Satz
- considerTax: bool veraltet => Übergabe false
- donotround: bool true = nicht runden; false = runden
- article: array Weitere Artikel-Informationen
- return: double Gibt den NICHT formatierten Preis zurück
- Hookpoints:
- sArticles.php_sCalculatingPriceNum_Start
- sArticles.php_sCalculatingPriceNum_BeforeEnd
sCheckIfConfig()
Überprüft, ob der Artikel Konfigurationsmöglichkeiten hat
- id: int s_articles.id
- return: bool true = ja; false = nein
sCheckIfEsd($id,$detailsID)
Überprüft, ob der Artikel ein ESD-/Download-Artikel ist
- id: int s_articles.id
- detailsID: int s_articles_details.id
- return: bool true = ja; false = nein
sCreateTranslationTable()
Aktualisiert die Caching-Tabelle für Artikel-Übersetzungen
- return: bool true = erfolgreich; false = fehlgeschlagen
- Hookpoints:
- sArticles.php_sCreateTranslationTable_BeforeEnd
sDeleteComparison($article)
Artikel aus der Vergleichstabelle löschen
- article: int s_articles.id des zu entfernenden Artikels
sDeleteComparisons($article)
Alle Artikel aus der Vergleichstabelle löschen
- article: void veraltet => Übergabe ""
sFormatPrice($price)
Artikel-Preise formatieren
- price: double Preis
- return: double Formatierter Preis
- Hookpoints:
- sArticles.php_sFormatPrice_BeforeEnd
sGetAffectedSuppliers($id=0)
Alle verfügbaren Hersteller einer bestimmten Kategorie auslesen
- id: int ID der Kategorie
- return: array Array der Hersteller
- Hookpoints:
- sArticles.php_sGetAffectedSuppliers_BeforeEnd
sGetAllArticlesInCategory($article)
Liest alle verfügbaren Artikel einer Kategorie aus (Notwendig für Vor- und Zurück-Blättern-Funktion)
- article: int s_articles.id
- return: array Artikel-Navigations Array
- Hookpoints:
- sArticles.php_sGetAllArticlesInCategory_Start
- sArticles.php_sGetAllArticlesInCategory_AfterSQL
- sArticles.php_sGetAllArticlesInCategory_LoopStart
- sArticles.php_sGetAllArticlesInCategory_LoopEnd
- sArticles.php_sGetAllArticlesInCategory_BeforeEnd
sGetArticleAccessories($id)
Liest alle über den Artikel-Konfigurator definierten Zubehöre aus
- id: int s_articles.id
- return: array Array mit Zubehör-Daten
- Hookpoints:
- sArticles.php_sGetArticleAccessories_BeforeEnd
sGetArticleById($id=0)
Liest alle Informationen eines bestimmten Artikels aus (Für Detailseite Artikel)
- var1: int ID des Artikels (s_articles.id)
- return: array Array mit den Artikeldaten
- Hookpoints:
- sArticles.php_sGetArticleById_Start
- sArticles.php_sGetArticleById_Start2
- sArticles.php_sGetArticleById_AfterSQL
- sArticles.php_sGetArticleById_AfterQuery
- sArticles.php_sGetArticleById_AfterLinks
- sArticles.php_sGetArticleById_AfterCrossSelling
- sArticles.php_sGetArticleById_AfterBlockPrices"
- sArticles.php_sGetArticleById_AfterVariantSQL
- sArticles.php_sGetArticleById_VariantLoopStart
- sArticles.php_sGetArticleById_VariantLoopEnd
- sArticles.php_sGetArticleById_BeforeReturn
sGetArticleCharts()
Artikel Topseller - Liste (gefiltert nach Kategorie)
- return: array Array mit den Topseller-Informationen
- Hookpoints:
- sArticles.php_sGetArticleCharts_AfterSQL
- sArticles.php_sGetArticleCharts_AfterSQL2
- sArticles.php_sGetArticleCharts_LoopStart
- sArticles.php_sGetArticleCharts_LoopEnd
- sArticles.php_sGetArticleCharts_BeforeEnd
sGetArticleConfig($id,$article)
Liest alle Artikel-Konfigurator Gruppen und Optionen aus
- id: int s_articles.id
- article: array Weitere Artikel Informationen
- return: array Artikel-Konfigurator Informationen
- Hookpoints:
- sArticles.php_sGetArticleConfig_Start
- sArticles.php_sGetArticleConfig_Start2
- sArticles.php_sGetArticleConfig_BeforeEnd
sGetArticleIdByOrderNumber($ordernumber)
Artikel-ID anhand der Bestellnummer ermitteln
- ordernumber: int Bestellnummer (s_articles_details.ordernumber)
- return: int Artikel ID
sGetArticleNameByOrderNumber($ordernumber)
Artikelname anhand der Bestellnummer ermitteln
- ordernumber: int Bestellnummer (s_articles_details.ordernumber)
- return: string Artikelname
sGetArticlePictures($sArticleID,$onlyCover=true,$pictureSize,$ordernumber="")
Alle verfügbaren Artikel-Abbildungen auslesen
- sArticleID: int ID des Artikels
- onlyCover: bool true = s_articles_img.main = 1 | Lediglich Coverbilder
- pictureSize: void veraltet => Übergabe ""
- ordernumber: int Artikel-Bestellnummer
- return: array Array-Result
- Hookpoints:
- sArticles.php_sGetArticlePictures_BeforeEnd
sGetArticleProperties($article,$filtergroupID)
Artikel-Eigenschaften auslesen
- article: int Artikel-ID
- filtergroupID: int s_filter_values.groupID
- return: array Array der Eigenschaften
- Hookpoints:
- sArticles.php_sGetArticleProperties_Start
- sArticles.php_sGetArticleProperties_AfterSQL
- sArticles.php_sGetArticleProperties_BeforeEnd
sGetArticlesAverangeVote($article)
Durchschnittliche Artikel-Bewertung auslesen
- var1: int Artikel-ID
- return: array Array mit dem Durchschnitt und der absoluten Anzahl an Bewertungen
- Hookpoints:
- sArticles.php_sGetArticlesAverangeVote_AfterSQL
- sArticles.php_sGetArticlesAverangeVote_BeforeEnd
sGetArticlesByCategory()
Artikel einer bestimmten Kategorie auslesen
- return: array Artikel-Array
- Hookpoints:
- sArticles.php_sGetArticlesByCategory_Start
- sArticles.php_sGetArticlesByCategory_BeforeSQL
- sArticles.php_sGetArticlesByCategory_AfterSQL
- sArticles.php_sGetArticlesByCategory_BeforeCountArticles1
- sArticles.php_sGetArticlesByCategory_BeforeCountArticles2
- sArticles.php_sGetArticlesByCategory_AfterCalculatingPages
- sArticles.php_sGetArticlesByCategory_LoopArticlesStart
- sArticles.php_sGetArticlesByCategory_LoopArticlesStart1
- sArticles.php_sGetArticlesByCategory_LoopArticlesStart2
- sArticles.php_sGetArticlesByCategory_LoopArticlesEnd
- sArticles.php_sGetArticlesByCategory_BeforeEnd
sGetArticlesByChar()
Alle Artikel nach Anfangsbuchstaben (A-Z Index) auslesen
- return: array Artikel-Array
sGetArticlesByName ($orderBy="a.topseller DESC",$category=0,$mode="")
Artikel nach Bezeichnung auslesen
- orderBy: string ORDER BY Statement-Teil
- category: int ID der Kategorie
- mode: string Modus
- return: array Artikel-Array
sGetArticlesBySupplier()
Artikel nach Hersteller auslesen (Alle Artikel von Hersteller X)
- return: array Artikel-Array
sGetArticlesNewest($filterByCategory)
Achtung: Wird seit 2.1 ebenfalls in sGetArticlesByName abgewickelt Artikel - Neuheiten auslesen
- filterByCategory: int s_articles_categories.categoryID
- return: array Artikel-Array
sGetArticlesSnips($filterByCategory)
Artikel - Sonderangebote auslesen
- filterByCategory: int veraltet => wird nicht mehr verwendet
- return: array Artikel-Array
sGetArticlesVotes($article)
Alle Artikel - Bewertungen auslesen
- article: int Artikel-ID
- return: array Artikel-Array
sGetArticleTaxById($id)
Artikel Steuersatz anhand der ID ermitteln
- return: int/bool Steuersatz oder false
sGetCategoryProperties($id=0)
Alle verfügbaren Artikel-Eigenschaften einer bestimmten Kategorie auslesen
- id: int ID der Kategorie
- return: array Artikel-Array
- Hookpoints:
- sArticles.php_sGetCategoryProperties_BeforeEnd
sGetCheapestPrice($article,$group,$pricegroup,$usepricegroups)
Ermittelt den günstigsten Preis zu einem Artikel
- article: int ID des Artikels (s_articles.id)
- group: int Kundengruppen-Key
- pricegroup: int Preisgruppen-ID (s_core_pricegroups.id)
- usepricegroups: bool Preisgruppen verwenden für diesen Artikel Ja/Nein
- return: double Günstigster Preis (oder 0.00)
- Hookpoints:
- sArticles.php_sGetCheapestPrice_BeforeEnd1
- sArticles.php_sGetCheapestPrice_BeforeEnd2
- sArticles.php_sGetCheapestPrice_BeforeEnd3
sGetComparisons()
Artikel aus Vergleichstabelle abfragen
- return: mixed Artikel-Array oder false
sGetLastArticles($sCurrentArticle=0)
Zuletzt angesehene Artikel auslesen
- sCurrentArticle: int aktueller Artikel
- return: array Artikel-Array
sGetPricegroupDiscount($customergroup,$groupID,$listprice,$quantity,$doMatrix=true,$articleData=array())
Ermittelt mögliche Rabatte/Rabattstaffeln für einen Artikel
- customergroup: int s_core_customergroups.groupkey
- groupID: int Gruppierungs-ID
- listprice: int Listenpreis
- quantity: int Menge
- doMatrix: array Matrixdaten
- articleData: int Artikeldaten
- return: array Array der Listenpreise
- Hookpoints:
- sArticles.php_sGetPricegroupDiscount_Start
- sArticles.php_sGetPricegroupDiscount_BeforeEnd1
- sArticles.php_sGetPricegroupDiscount_BeforeEnd2
- sArticles.php_sGetPricegroupDiscount_BeforeEnd3
- sArticles.php_sGetPricegroupDiscount_BeforeEnd4
- sArticles.php_sGetPricegroupDiscount_Start
- sArticles.php_sGetPricegroupDiscount_AfterSQL
- sArticles.php_sGetPricegroupDiscount_AfterSQL2
- sArticles.php_sGetPricegroupDiscount_AfterSQL3
sGetPromotionById($mode,$category=0,$value=0)
Auslesen von fest definierten Artikeln, zufälligen, Topsellern und Neuheiten
- mode: string Modus (fix, random, top, new)
- category: int Filtern auf eine bestimmte Kategorie
- value: int ID für Modus festen Artikel
- return: array Rückgabe Array
- Hookpoints:
- sArticles.php_sGetPromotionById_Start
- sArticles.php_sGetPromotionById_BeforeSwitch
- sArticles.php_sGetPromotionById_SQLRandom1
- sArticles.php_sGetPromotionById_SQLRandom2
- sArticles.php_sGetPromotionById_SQLNew1
- sArticles.php_sGetPromotionById_SQLNew2
- sArticles.php_sGetPromotionById_SQLTop
- sArticles.php_sGetPromotionById_Image
- sArticles.php_sGetPromotionById_Premium
- sArticles.php_sGetPromotionById_AfterSQL
- sArticles.php_sGetPromotionById_QueryStart
- sArticles.php_sGetPromotionById_QueryEnd
- sArticles.php_sGetPromotionById_BeforeEnd
sGetPromotions($category)
Einkaufswelten für eine bestimmte Kategorie auslesen
- category: int s_emarketing_promotions.category
- return: array Einkauswelten-Array
- Hookpoints:
- sArticles.php_sGetPromotions_Start
- sArticles.php_sGetPromotions_AfterSQL
- sArticles.php_sGetPromotions_BeforeEnd
sGetSupplierById($id)
Hersteller nach ID auslesen
- id: int Hersteller ID
- return: array Array mit Herstellerdaten
sGetTranslation($data,$id,$object,$language)
Übersetzung für einen bestimmten Artikel auslesen
- return: array Array mit Übersetzungen
sGetUnit($id)
Liest die Mengeneinheit eines bestimmten Artikels aus
- id: int s_articles.id
- return: array Array mit den Mengenangaben
sOptimizeText($text)
Text-Optimierung | Entfernung von Umlauten und bestimmten Sonderzeichen
- text: string Zu opimierender Text
- return: string Optimierter Text
- Hockpoints
- sArticles.php_sOptimizeText_Start
- sArticles.php_sOptimizeText_BeforeEnd
sRound($moneyfloat = null)
Artikel - Preise korrekt runden
- moneyfloat : double zu rundender Betrag
- return: double gerundeter Betrag
- Hookpoints:
- sArticles.php_sRound_BeforeEnd
sSaveComment($article))
Artikel-Bewertung speichern
- article: int ID des Artikels
- Hookpoints:
- sArticles.php_sSaveComment_AfterAssign
- sArticles.php_sSaveComment_BeforeSQ
- sArticles.php_sSaveComment_AfterSQL
sSetLastArticle($image,$name,$id))
Aktualisierung der Liste zuletzt angesehener Artikel
- image: string s_emarketing_lastarticles.img
- name: string s_emarketing_lastarticles.name
- id: int Artikel ID
Artikel-PDF erstellen
Artikel bewerten
Kommentare:
Artikel kommentieren
Weitere interessante Artikel:
Bestell-Nr.: 98863_
Lieferzeit ca. 5 Tage
Preise inkl. gesetzlicher
MwSt. zzgl. Versandkosten*
Preise inkl. gesetzlicher
MwSt. + Versandkosten*
Kategorien: