Shopware Knowledgebase

Dieser Artikel ist noch nicht für Shopware 3.5 geprüft bzw. freigegeben.
Shopware Labs

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 Kommentare

Inhaltsverzeichnis

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

Waren diese Informationen hilfreich? Ja Nein


Kommentare:

Artikel kommentieren


Die mit einem * markierten Felder sind Pflichtfelder.

Weitere interessante Artikel:

Bezeichnung:
Rating:
Klicks:
Datum:
7 Punkte
6134
01.07.2009
7 Punkte
2108
10.06.2009
7 Punkte
2664
10.06.2009

Bestell-Nr.: 98863_

Lieferzeit ca. 5 Tage

€ 1,00

Preise inkl. gesetzlicher
MwSt. zzgl. Versandkosten*

€ 1,00

Preise inkl. gesetzlicher
MwSt. + Versandkosten*

Kategorien: