Hallo liebe shopware-Gemeinde, ich habe folgende Frage: kann man und wenn ja wie Änderung in der Datei “sArticles.php” (engine/core/class/sArticles.php) updatesicher machen, dass Sie nicht bei einem Update überschrieben werden? Es würde beispielsweise um die Darstellung des Preises gehen - hier soll bei Variantenartikeln standardmäßig der höchste und nicht der niedrigste Preis angezeigt werden (eine Lösung dazu habe ich, nur wird die Änderung in dieser Datei bei einem Update wieder zurückgesetzt). Mit besten Grüßen Sebastian
Änderungen an den core Dateien solltest du immer vermeiden. Prinzipiell ist jede nur denkbare Anpassung über ein Plugin realisierbar. Siehe dazu als Einstieg: http://wiki.shopware.com/Developers-Guide_cat_796.html Viele Grüße
[quote=„Aquatuning GmbH“]Änderungen an den core Dateien solltest du immer vermeiden. Prinzipiell ist jede nur denkbare Anpassung über ein Plugin realisierbar. Siehe dazu als Einstieg: http://wiki.shopware.com/Developers-Guide_cat_796.html Viele Grüße[/quote] Hallo, das konnte ich mir schon denken das es sicher nicht optimal ist, an den core-Dateien zu ändern. Ist es da mit einem Plugin möglich, die Abfrage in der „sGetCheapestPrice“-Funktion der Datei „sArticles.php“ (Verzeichnis „engine\core\class“) so abzuändern, das statt „ORDER BY price ASC“ der Wert „ORDER BY price DESC“ steht? Grüße Sebastian
[quote=“tonne”][quote=“sschreier”] Ist es da mit einem Plugin möglich, die Abfrage in der “sGetCheapestPrice”-Funktion der Datei “sArticles.php” (Verzeichnis “engine\core\class”) so abzuändern, das statt “ORDER BY price ASC” der Wert “ORDER BY price DESC” steht?[/quote] Da in der Funktion keine Events etc sind bleibt dir leider nur übrig die ganze Funktion zu überschreiben. Hier ein Anfang damit Du das umsetzen kannst: $this-\>subscribeEvent( 'sArticles::sGetCheapestPrice::replace', 'onArticlesSGetCheapestPriceReplace' );
public function onArticlesSGetCheapestPriceReplace(Enlight\_Hook\_HookArgs $args) { /\*\* @var sArticles $subject \*/ $subject = $args-\>getSubject(); $return = $args-\>getReturn(); $article = $args-\>get('article'); $group = $args-\>get('group'); $pricegroup = $args-\>get('pricegroup'); $usepricegroups = $args-\>get('usepricegroups'); $realtime = $args-\>get('realtime'); $returnArrayIfConfigurator = $args-\>get('returnArrayIfConfigurator'); $checkLiveshopping = $args-\>get('checkLiveshopping'); $args-\>setReturn($return); }
[/quote] Hallo Tonne, danke erstmal für deine Mühe. Muss ich diese Zeilen in die Datei einfügen oder muss ich eine neue Datei erstellen und diese irgendwo im Template-Pfad ablegen? Beste Grüße Sebastian
Vielleicht solltest du dich jetzt doch einmal mit meinem bereits geposteten Link beschäftigen: http://wiki.shopware.com/Developers-Guide_cat_796.html Viele Grüße