# Staffelpreise werden nicht angezeigt - SW: 5.2.2 - Plugin: Custom Products 1.0.3

**URL:** <https://forum.shopware.com/t/staffelpreise-werden-nicht-angezeigt-sw-5-2-2-plugin-custom-products-1-0-3/38703>\
**Category:** Allgemein\
**Created:** [2. August 2016 um 08:38 UTC](https://forum.shopware.com/t/staffelpreise-werden-nicht-angezeigt-sw-5-2-2-plugin-custom-products-1-0-3/38703 "2016-08-02T08:38:08Z")\
**Posts on this page:** 17\
**Page:** 1

<div class="post-metadata">

**Author:** ![philipp87](https://avatars.discourse-cdn.com/v4/letter/p/b9bd4f/32.png) [@philipp87](https://forum.shopware.com/u/philipp87)\
**Post date:** [2. August 2016 um 08:38 UTC](https://forum.shopware.com/t/staffelpreise-werden-nicht-angezeigt-sw-5-2-2-plugin-custom-products-1-0-3/38703/1 "2016-08-02T08:38:08Z")

</div>

Hallo, ich grüße die Community. Ich komme mit einem Problem und meinen wenigen Shopware Erfahrungen leider nicht weiter. Ich kann nicht genau sagen, ob es sich hier um ein Core-Bug handelt&nbsp;oder ob ich einfach nur irgenetwas falsch eingestellt habe.

Fehlerbeschreibung: Beim Erstaufruf einer Produktseite ist die Tabelle mit den Staffelpreisen einfach leer. Sobald ich eine Produktvariante anklicke, werden die korrekten Preise in der Tabelle angezeigt. Im Smarty-Debug ist mir aufgefallen, dass die Variable „$blockPrice“ beim Erstaufruf nicht vorhanden ist. Im Backend habe ich eine Default-Variante definiert. Dieses Problem tritt nur auf, wenn ich den „Bild“-Konfigurator nutze, bei dem Standart-Konfigurator werden die Staffelpreise bein Erstaufruf ebenfalls korrekt dargestellt.

Ich versuch einfach mal mein Glück. Vielleicht kann mir ja jemand weiterhelfen.

---

<div class="post-metadata">

**Author:** ![Moritz\_Naczenski](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/moritz_naczenski/32/7792_2.png) [@Moritz\_Naczenski](https://forum.shopware.com/u/Moritz_Naczenski)\
**Post date:** [2. August 2016 um 08:40 UTC](https://forum.shopware.com/t/staffelpreise-werden-nicht-angezeigt-sw-5-2-2-plugin-custom-products-1-0-3/38703/2 "2016-08-02T08:40:10Z")

</div>

Der Bild Konfigurator und auch der Auswahl-Konfigurator arbeiten nicht mit der Vorauswahl. Es ist also extra so gedacht, dass die spezifischen Informationen erst nach Auswahl der Variante vorhandne sind.

---

<div class="post-metadata">

**Author:** ![philipp87](https://avatars.discourse-cdn.com/v4/letter/p/b9bd4f/32.png) [@philipp87](https://forum.shopware.com/u/philipp87)\
**Post date:** [2. August 2016 um 09:04 UTC](https://forum.shopware.com/t/staffelpreise-werden-nicht-angezeigt-sw-5-2-2-plugin-custom-products-1-0-3/38703/3 "2016-08-02T09:04:50Z")

</div>

Hallo Moritz, danke für die rasche Antwort. Also wie oben schon erwähnt, sind die Staffelpreise im „Normalen“ Konfigurator vorhanden. Es gibt ja bei dem Produktaufruf eine Default-Artikelnummer mit der dazugehörigen Konfiguration, diese kann ich dann auch in den Warenkorb legen. Wenn ich die Artikelnummer in der URL habe:

„?number=SW101010ABC“

dann wird die Preisstaffelung auch angezeigt.

Hat jemand Ideen, wie ich die Anzeige der Preisstaffelung für die Default-Artikelnummer erzwingen kann?

---

<div class="post-metadata">

**Author:** ![nicole86](https://avatars.discourse-cdn.com/v4/letter/n/a698b9/32.png) [@nicole86](https://forum.shopware.com/u/nicole86)\
**Post date:** [2. August 2016 um 14:39 UTC](https://forum.shopware.com/t/staffelpreise-werden-nicht-angezeigt-sw-5-2-2-plugin-custom-products-1-0-3/38703/4 "2016-08-02T14:39:48Z")

</div>

It’s not a bug, it’s a feature 😉

Das Problem ist schon seit langem bekannt und wurde schon paar mal erfolglos diskutiert.

---

<div class="post-metadata">

**Author:** ![philipp87](https://avatars.discourse-cdn.com/v4/letter/p/b9bd4f/32.png) [@philipp87](https://forum.shopware.com/u/philipp87)\
**Post date:** [3. August 2016 um 06:47 UTC](https://forum.shopware.com/t/staffelpreise-werden-nicht-angezeigt-sw-5-2-2-plugin-custom-products-1-0-3/38703/5 "2016-08-03T06:47:51Z")

</div>

Das ist ja doof, dann mal rann an den Core D:

---

<div class="post-metadata">

**Author:** ![SebastianKloepper](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/sebastiankloepper/32/21435_2.png) [@SebastianKloepper](https://forum.shopware.com/u/SebastianKloepper)\
**Post date:** [3. August 2016 um 06:54 UTC](https://forum.shopware.com/t/staffelpreise-werden-nicht-angezeigt-sw-5-2-2-plugin-custom-products-1-0-3/38703/6 "2016-08-03T06:54:31Z")

</div>

Hallo philipp87,

wie Moritz schon geschrieben hat, ist das ja bewusst so gebaut. Es gibt drei verschiedene Darstellungstypen. Du kannst dich für einen entscheiden. Du wünscht dir jetzt eine Mischung aus zwei Typen. Das wirst du dann schon individuell umsetzen müssen.

Der Standard-Konfigurator hat alle Optionen ausgewählt/aktiviert der Vorauswahl. Nach Aufruf der Detailseite kann man den Artikel immer auch direkt in den Warenkorb legen. Daher müssen alle Informationen beim Erstaufruf auch direkt ersichtlich sein. Bei den beiden anderen Darstellungsformen ist das bewusst anders gelöst. Dort ist immer eine Auswahl der Kunden nötig und dann werden die relevanten Infos nachgeladen.

Sebastian

---

<div class="post-metadata">

**Author:** ![philipp87](https://avatars.discourse-cdn.com/v4/letter/p/b9bd4f/32.png) [@philipp87](https://forum.shopware.com/u/philipp87)\
**Post date:** [3. August 2016 um 08:22 UTC](https://forum.shopware.com/t/staffelpreise-werden-nicht-angezeigt-sw-5-2-2-plugin-custom-products-1-0-3/38703/7 "2016-08-03T08:22:34Z")

</div>

Hallo Sebastian,

danke für die Info, ich habe jetzt in der „sArticles.php“ Zeile 1210 die If-Bedingung geändert und erzielte somit das gewünschte Ergebnis.

```
if ($productNumber || $type === 0) {
  $selection = $product->getSelectedOptions();
}

```

Somit ist das Problem vorerst gelöst.

---

<div class="post-metadata">

**Author:** ![sschreier](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/sschreier/32/23296_2.png) [@sschreier](https://forum.shopware.com/u/sschreier)\
**Post date:** [3. August 2016 um 08:32 UTC](https://forum.shopware.com/t/staffelpreise-werden-nicht-angezeigt-sw-5-2-2-plugin-custom-products-1-0-3/38703/8 "2016-08-03T08:32:54Z")

</div>

> [@philipp87 schrieb:](https://forum.shopware.com/profile/24381/philipp87 "philipp87")
> 
> Hallo Sebastian,
> 
> danke für die Info, ich habe jetzt in der „sArticles.php“ Zeile 1210 die If-Bedingung geändert und erzielte somit das gewünschte Ergebnis.
> 
> if ($productNumber || $type === 0) {  
> $selection = $product-\>getSelectedOptions();  
> }
> 
> Somit ist das Problem vorerst gelöst.

Hallo,

das ist doch aber überhaupt nicht updatesicher und wahrscheinlich beim nächsten Update wieder überschrieben (Änderungen in den Core - Dateien)?

Beste Grüße

Sebastian

---

<div class="post-metadata">

**Author:** ![philipp87](https://avatars.discourse-cdn.com/v4/letter/p/b9bd4f/32.png) [@philipp87](https://forum.shopware.com/u/philipp87)\
**Post date:** [3. August 2016 um 08:40 UTC](https://forum.shopware.com/t/staffelpreise-werden-nicht-angezeigt-sw-5-2-2-plugin-custom-products-1-0-3/38703/9 "2016-08-03T08:40:18Z")

</div>

Ja das ist richtig. Leider gibt es aktuell meines Wissens keine andere Lösung, wie ich die Staffelpreise beim Erstladen eines Bildkonfigurator-Produktes (Mit Vorauswahl) anzeigen lassen kann.

Wie bereits erwähnt wurde, ist es so gewollt.

Andere Lösungvorschläge sind natürlich gerne gesehen :3

LG Philipp

---

<div class="post-metadata">

**Author:** ![nicole86](https://avatars.discourse-cdn.com/v4/letter/n/a698b9/32.png) [@nicole86](https://forum.shopware.com/u/nicole86)\
**Post date:** [3. August 2016 um 09:28 UTC](https://forum.shopware.com/t/staffelpreise-werden-nicht-angezeigt-sw-5-2-2-plugin-custom-products-1-0-3/38703/10 "2016-08-03T09:28:33Z")

</div>

Philipp, du bist der Held des Tages. Damit hast du bestimmt mehreren geholfen.

Vielen Dank!

(hab’s noch nicht probiert, aber mach ich gleich :))

---

<div class="post-metadata">

**Author:** ![steinsoftware](https://avatars.discourse-cdn.com/v4/letter/s/b487fb/32.png) [@steinsoftware](https://forum.shopware.com/u/steinsoftware)\
**Post date:** [3. August 2016 um 11:22 UTC](https://forum.shopware.com/t/staffelpreise-werden-nicht-angezeigt-sw-5-2-2-plugin-custom-products-1-0-3/38703/11 "2016-08-03T11:22:17Z")

</div>

Wie von @sschreier‍ bereits erwähnt. Nie an den Core-Dateien rumdoktoren, da diese Änderungen beim nächsten Update wieder weg sind.

---

<div class="post-metadata">

**Author:** ![nicole86](https://avatars.discourse-cdn.com/v4/letter/n/a698b9/32.png) [@nicole86](https://forum.shopware.com/u/nicole86)\
**Post date:** [3. August 2016 um 14:43 UTC](https://forum.shopware.com/t/staffelpreise-werden-nicht-angezeigt-sw-5-2-2-plugin-custom-products-1-0-3/38703/12 "2016-08-03T14:43:39Z")

</div>

@philipp87 vielen Dank, funktioniert einwandfrei

@sschreier‍: solange keine bessere Lösung in Sicht, habe ich lieber ein fehlerfrei funktionierendes System als ein updatesicheres. Die eine Zeile kann man&nbsp;nach jedem Update schnell ersetzen. Soll jeder machen, was&nbsp;er für richtig hält.&nbsp;

---

<div class="post-metadata">

**Author:** ![TechSigns](https://avatars.discourse-cdn.com/v4/letter/t/f14d63/32.png) [@TechSigns](https://forum.shopware.com/u/TechSigns)\
**Post date:** [15. März 2017 um 13:17 UTC](https://forum.shopware.com/t/staffelpreise-werden-nicht-angezeigt-sw-5-2-2-plugin-custom-products-1-0-3/38703/13 "2017-03-15T13:17:37Z")

</div>

Da das Thema ja wohl immer noch aktuell ist und die Vorauswahl immer noch nicht so funktioniert, wie sie soll, habe ich mal versucht,&nbsp;den Vorschlag von Philipp in ein kleines Plugin zu packen, damit der Core nicht modifiziert werden muss.

Kurze Erklärung vorab: in der Methode sGetArticleById wird die Variable $providedNumber ausschließlich für die Prüfung in der betroffenen IF-Abfrage genutzt. Der Parameter $number wird ohnehin gleich darauf - wenn vorher leer - auf die Hauptartikel-Nummer gesetzt. Das Ganze macht der Before-Hook schon vorher. Damit funktioniert dann die Vorauswahl bei Varianten.

```
    public function install()
    {
        $this->subscribeEvent('sArticles::sGetArticleById::before', 'selectDefaultVariant');
        return true;
    }

    public function selectDefaultVariant(Enlight_Hook_HookArgs $args)
    {
        /** @var \sArticles $subject */
        $subject = $args->getSubject();
        $container = Shopware()->Container();
        $productNumberService = $container->get('shopware_storefront.product_number_service');

        $return = $args->getReturn();

        $id = $args->get('id');
        $number = $args->get('number') ? $args->get('number') : $productNumberService->getMainProductNumberById($id);

        $args->set('number', $number);
        $args->setReturn($return);
    }

```

&nbsp;

Irgendwelche Einwände? Hab ich was übersehen? Bei mir gab es zumindest keine Seiteneffekte. Bis jetzt läuft das wie es soll.

---

<div class="post-metadata">

**Author:** ![nicole86](https://avatars.discourse-cdn.com/v4/letter/n/a698b9/32.png) [@nicole86](https://forum.shopware.com/u/nicole86)\
**Post date:** [26. März 2017 um 08:39 UTC](https://forum.shopware.com/t/staffelpreise-werden-nicht-angezeigt-sw-5-2-2-plugin-custom-products-1-0-3/38703/14 "2017-03-26T08:39:26Z")

</div>

Auch bei mir, funktioniert einwandfreit.

Vielen Dank!

---

<div class="post-metadata">

**Author:** ![Overtone](https://avatars.discourse-cdn.com/v4/letter/o/848f3c/32.png) [@Overtone](https://forum.shopware.com/u/Overtone)\
**Post date:** [5. Dezember 2017 um 01:17 UTC](https://forum.shopware.com/t/staffelpreise-werden-nicht-angezeigt-sw-5-2-2-plugin-custom-products-1-0-3/38703/15 "2017-12-05T01:17:44Z")

</div>

Kann mir bitte jemand kurz erklären wie ich aus dem Code von TechSigns ein Plugin erstelle? Einfach diesen Code in eine PHP-Datei und zippen reicht offensichtlich nicht!

---

<div class="post-metadata">

**Author:** ![bachel](https://avatars.discourse-cdn.com/v4/letter/b/ac91a4/32.png) [@bachel](https://forum.shopware.com/u/bachel)\
**Post date:** [13. Januar 2019 um 12:46 UTC](https://forum.shopware.com/t/staffelpreise-werden-nicht-angezeigt-sw-5-2-2-plugin-custom-products-1-0-3/38703/16 "2019-01-13T12:46:09Z")

</div>

> [@TechSigns schrieb:](https://forum.shopware.com/profile/12455/TechSigns "TechSigns")
> 
> Da das Thema ja wohl immer noch aktuell ist und die Vorauswahl immer noch nicht so funktioniert, wie sie soll, habe ich mal versucht,&nbsp;den Vorschlag von Philipp in ein kleines Plugin zu packen, damit der Core nicht modifiziert werden muss.
> 
> Kurze Erklärung vorab: in der Methode sGetArticleById wird die Variable $providedNumber ausschließlich für die Prüfung in der betroffenen IF-Abfrage genutzt. Der Parameter $number wird ohnehin gleich darauf - wenn vorher leer - auf die Hauptartikel-Nummer gesetzt. Das Ganze macht der Before-Hook schon vorher. Damit funktioniert dann die Vorauswahl bei Varianten.
> 
> public function install()  
> {  
> $this-\>subscribeEvent(‚sArticles::sGetArticleById::before‘, ‚selectDefaultVariant‘);  
> return true;  
> }
> 
> public function selectDefaultVariant(Enlight\_Hook\_HookArgs $args)  
> {  
> /\*\* @var \sArticles $subject \*/  
> $subject = $args-\>getSubject();  
> $container = Shopware()-\>Container();  
> $productNumberService = $container-\>get(‚shopware\_storefront.product\_number\_service‘);
> 
> $return = $args-\>getReturn();
> 
> $id = $args-\>get(‚id‘);  
> $number = $args-\>get(‚number‘) ? $args-\>get(‚number‘) : $productNumberService-\>getMainProductNumberById($id);
> 
> $args-\>set(‚number‘, $number);  
> $args-\>setReturn($return);  
> }
> 
> &nbsp;
> 
> Irgendwelche Einwände? Hab ich was übersehen? Bei mir gab es zumindest keine Seiteneffekte. Bis jetzt läuft das wie es soll.

Erstmal Danke das funktioniert&nbsp;Super&nbsp; !

Ein Problem habe&nbsp;ich aber noch wenn der Artikel zb die Artikelnummer &nbsp;SW10797.2 hat wählt er nichts aus bekommt man das irgendwie hin das er diesen Artikel dann trotzdem als Vorauswahl anlegt ?

Bin über jegliche Hilfe Dankbar&nbsp;&nbsp;

---

<div class="post-metadata">

**Author:** ![konsi](https://avatars.discourse-cdn.com/v4/letter/k/eada6e/32.png) [@konsi](https://forum.shopware.com/u/konsi)\
**Post date:** [13. Februar 2019 um 13:07 UTC](https://forum.shopware.com/t/staffelpreise-werden-nicht-angezeigt-sw-5-2-2-plugin-custom-products-1-0-3/38703/17 "2019-02-13T13:07:19Z")

</div>

> [@Overtone schrieb:](https://forum.shopware.com/profile/20331/Overtone "Overtone")
> 
> Kann mir bitte jemand kurz erklären wie ich aus dem Code von TechSigns ein Plugin erstelle? Einfach diesen Code in eine PHP-Datei und zippen reicht offensichtlich nicht!

Wäre für mich auch mal interessant zu wissen O\_o&nbsp;
