Quantcast
Channel: Programmierung - Shopware Community Forum
Viewing all 2871 articles
Browse latest View live

Config-Flag built-in LESS Compiler?

$
0
0

Ich würde mir eine Möglichkeit über die config.php wünschen, den built-in LESS compiler vollständig und permanent zu deaktivieren. Gibt es diese Möglichkeit oder einen Workaround?

Mein Gefühl ist, dass die Grunt-Integration nett ist, die Themes jedoch weiterhin durch den mitgelieferten LESS-Compiler laufen? 

Danke!


neues Plugin-System: Controller registrieren

$
0
0

Hi, ich es richtig, dass man im neuen Plugin-System einen Controller aufwändig über einen Subscriber und die services.xml registrieren muss?

Bisher war es ja mit einem einfachen 

$this->registerController('Frontend', 'MyController');

möglich.

Einbinden einer Schrift über protected $javascript

$
0
0

Hallo!

Ich versuche gerade eine Schrift von MyFonts.com als 30-Tage Testversion in Shopware 5.2 einzubinden.

Ich ging wie folgt vor:
Javascriptdatei "myFontTestschriften.js" anlegen

<script type="text/javascript">
    (function() {
        var path = '//easy.myfonts.net/v2/js?sid=206566(font-family=FF+DIN+Round+Pro+Medium)&sid=206567(font-family=FF+DIN+Round+Pro+Bold)&sid=206569(font-family=FF+DIN+Round+Pro+Light)&sid=236049(font-family=FF+DIN+Round+OT+Regular)&key=ejWa5E49CI',
            protocol = ('https:' == document.location.protocol ? 'https:' : 'http:'),
            trial = document.createElement('script');
        trial.type = 'text/javascript';
        trial.async = true;
        trial.src = protocol + path;
        var head = document.getElementsByTagName("head")[0];
        head.appendChild(trial);
    })();
</script>

Diese habe ich abgelegt unter:
themes/Frontend/meinTemplate/frontend/_public/src/js

dann habe ich im Theme "meinTemplate" diese JavaScript-Datei als Variable eingebunden

protected $javascript = array(
    'themes/Frontend/meinTemplate/frontend/_public/src/js/myFontTestschriften.js'
);

 

Danach habe ich in der CSS-Datei

@font-base-stack:"'FF DIN Round Pro Medium'";

 

 

Leider findet man nun nach dem Kopmilieren des Thems weder auf der Seite im Quellcode  der Scriptsource noch wird die Schrift auf der Seite verwendet. 

Was mache ich hier falsch?

 

Danke für alle Tipps!

Viele Grüße

Wilhelm Walker

non-existent service "swag_import_export.logger" bei Nutzung der console

$
0
0

Hallo,
hab mir eine frische SW 5.2.6 Installation lokal (Ubuntu 16.04 / PHP 5.6) eingerichtet, und wollte per bin/console mit dem Advanced Import / Export Plugin einiges ausprobieren.
Doch leider quittiert das Kommando

sudo -u www-data php console sw:importexport:export -p "Bestellungen" out.xml

mit der Fehlermeldung

[Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException]
You have requested a non-existent service "swag_import_export.logger".

Im Backend selbst funktionert das Plugin tadellos.
Ist das hier jetzt ein Fall für den Issue Tracker, oder muss hier noch was nachinstalliert werden?

Variablen auslesen ?

$
0
0

Hallo Zusammen,

ich bin relativ neu in der Shopware Plugin Programmierung. Und habe eine Frage:

Ich würde gerne die Variablen einer Bestellung auslesen. Dazu habe ich folgendes schon:

$order             = $arguments->getSubject();
$dispatchID        = $order->dispatchId;
$orderNumber       = $order->sOrderNumber;

Die bekomme ich raus. 

Nur wie komme ich zum Beispiel an die User Daten oder ähnliches?
Gibt es dafür einen Trick wie man bei so etwas vorgeht um an beliebige Variablen zu kommen?

 

Würde mich über eine Antwort freuen!!

Grüße,
chrisen

Freitextfeld für Einkaufswelt (s_emotion_attributes) verfügbar machen

$
0
0

Hallo allerseits,

ich habe für die Einkaufswelten ein Freitextfeld angelegt, um den Einkaufswelten individuelle CSS-Klassen zuordnen zu können. Soweit ich verstanden habe, muss ich den ‘shopware_attribute.data_loader’-Service aufrufen, um die Attribute für ein Template verfügbar zu machen mit  so etwas wie: 

$attributes = $this->get('shopware_attribute.data_loader')->load('s_emotion_attributes', 'id');

Muss ich dafür ein Plugin anlegen oder kann man einen Service auch von einer anderen Stelle sinnvoll aufrufen? Über jede Hilfe wäre ich sehr dankbar und hoffe, dass ich mich beizeiten mal revanchieren kann.

API Abfrage Datenbank

$
0
0

Hallo,

ich bräuchte mal eure Hilfe bzgl. eines Denkfehlers.

 

Aktuell Frage ich per API eine CSV Datei ab, welche mit der Shopware Datenbank verglichen wird. Nach dem Motto , ist CSV Artikel = Shopware Artikelnummer, mache .....

Jetzt habe ich das Problem, das es anscheinend Artikel im Shop gibt welche nicht in der CSV sind. Diese werden natürlich niemals berücksichtigt, Da ja die CSV als Basis genommen wird.

Hat einer ne Idee oder nen direkten Code Ansatz wie ich die Datenbank mit der CSV abgleiche, also genau anders herum ?

Und ich müsste irgendwie eine Ausgabe haben, wo ich sehen kann, wo es unterschiede gibt, quasi alle Artikelnummern die nicht gleich sind ( Datenbank = CSV)

Wenn das jemand prof. also auf Rechnung machen könnte wäre es auch ok, nur brauche ich da ne saubere Lösung für.

MfG

Daniel

Maximalanzahl an Spalten für s_articles_atributes?

$
0
0

Hallo liebe shopware - Gemeinde,

beim Update eines Shopware Plugins kam folgende Meldung beim "Alter Table" - Befehl (also wo er versucht hat, das neue Feld / die neue Tabellenspalte zur Tabelle hinzuzufügen):

Unable to install, got exception: An exception occurred while executing 'ALTER TABLE `s_articles_attributes` ADD `attr_field` VARCHAR(500) NULL DEFAULT NULL': SQLSTATE[42000]: Syntax error or access violation: 1118 Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs 

. Das Update beinhaltet das Hinzufügen weiterer Artikel - Attributfelder über:

$service = $this->get('shopware_attribute.crud_service');
$service->update(
     's_articles_attributes',
     'attr_field',
     'string',
     [
          'label' => 'Feld',
          'supportText' => '',
          'helpText' => 'Feld',
          'translatable' => true,
          'displayInBackend' => true,
          'position' => 1,
          'custom' => false
     ]
);

Als "Vorschlag" kam, andere Datentypen zu nehmen (Blob, etc.). Nur legt das neue Attributsystem von Shopware ja die Datentypen selbst fest, siehe:

https://developers.shopware.com/developers-guide/attribute-system/#attribute-data-types . Also was nun? Gibt es eine Maximalanzahl an Spalten seitens Shopware oder was wäre ein "Workaround" für so einen Fall? Oder soll man jetzt einfach überall "text" statt "string" nehmen, auch wenn es bei dem Feld nicht unbedingt Sinn macht? @Moritz Naczenski

Beste Grüße

Sebastian

 

 

 


Best Practice Variablen/Werte in Shopware finden

$
0
0

Hallo zusammen,

ich wollte mal so in die Runde fragen wie ihr vorgeht wenn ihr eine Variable bzw einen Wert aus Shopware für ein Plugin braucht.

Als Beispiel den "Firstname" aus einer getätigten Bestellung.

Freue mich über eure Anregungen!

 

chrisen

 

Registrierung der Models

$
0
0

Hallo Shopware-Community,

ich habe eine Frage bezüglich Models. Muss man bei dem neuen Plugin-System seit 5.2 die eigenen Models registrieren?

Gruß Denis

ManyToOne mit Suchfeld

$
0
0

Hallo,

folgende Konstelation:

Ich habe eine ManyToOne relation zwischen meiner custom Tabelle und Article details.
Sprich in meiner Custom Tabelle befindet sich die detail_id als fk.

https://developers.shopware.com/developers-guide/backend-components/associations/?_ga=1.217926292.320870384.1441106219#manytoone-associations---product

Diese Anleitung war sehr sehr hilfreich aber löst mein Problem leider nicht ganz, da die combobox zu klein für Artikelvarianten ist.
Ich brauche ein Suchfeld + Paginagion da Varianten doch sehr schnell sehr viele werden können.

Sprich das Ergebnis soll aussehen wie eine ManyToMany mit Suche und Pagination nur, dass max. eins ausgewählt werden kann.

https://developers.shopware.com/developers-guide/backend-components/associations/?_ga=1.217926292.320870384.1441106219#manytomany-associations---produc

Kann mir jemand sagen, wie ich dies hin bekomme, ohne eine ManyToMany relation definieren zu müssen?

Danke für jeden Tipp =)

Nettobeträge nach Steuersätzen

$
0
0

Hallo!

Kann mir jemand sagen, wo ich bei Bestellungen im Shopware-Shop die Nettobeträge der einzelnen Steuersätze finde?

Also Kunde bestellt 1x Artikel mit 7% MwSt und 1x Artikel mit 19% MwSt.

Nun benötige ich ja für das Finazamt den Nettobetrag vom 7% Umsatz und den Nettobetrag vom 19% Umsatz.

Gruß!

Shopseiten Freitextfelder Frontend ausgeben?

$
0
0

Hallo,

wie kann ich die Freitextfelder der Shopseiten ausgeben?

{$sCustomPage.attr1} hat nicht funktioniert.

Grüße,

Alexander H.

Checkout Finish Plugin

$
0
0

Ich möchte einen Trackingpixel in die Finishseite einbinden. Dazu frage ich controller und controllerAction ab. Jedoch wird im Frontend gar nichts (leere Seiten) ausgegeben.

{if {controller|lower} eq "checkout" && {controllerAction|lower} eq "finish"}
 // some js
{/if}

Funktioniert aber nicht :-( Weiss jemand einen Tip?

REST API neuen kunden anlegen

$
0
0

Hallo,
ich versuche gerade einen neuen kunden über die API-REST schnittstelle anzulegen. dabei komm ich leider nicht weiter.
ich habe mir das beispiel von der shopware seite genommen und diese importiert.

$client->post('customers',  array(
    'email' => 'meier@mail.de',
    'billing' => array(
        "lastName" => "Meier"
    )
));
dabei bekomme ich aber die fehlermeldung: A country is required.

wenn ich dann ein country mit angebe:
$client->post('customers',  array(
    'email' => 'meier@mail.de',
    'billing' => array(       
"country" => "2",
 "lastName" => "Meier"
)
));

dann bekomme ich folgende fehlermeldung: Validation error
wenn jemand weiter?
vielen dank:-)

mfg
dutchy

 


Freitextfeld | Checkbox | wieder gelöscht | nun lassen sich keine Artikel mehr anlegen

$
0
0

Ich habe ein Freitextfeld vom Typ "Checkbox" wieder gelöscht, seit dem kann ich keine Artikel mehr anlegen. Genauer gesagt: Die Artikel werden zwar in der Datenbank gespeichert ABER, diese werden nicht mehr in der Artikelübersicht bzw. im Frontend angezeigt.

Im Log befindet sich dieser Fehler:

Ups! Ein Fehler ist aufgetreten!

Die nachfolgenden Hinweise sollten Ihnen weiterhelfen.

Property Shopware\Models\Attribute\Article::$adwords does not exist in vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/RuntimeReflectionService.php on line 80

Stack trace:

#0 vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/RuntimeReflectionService.php(80): ReflectionProperty->__construct('Shopware\\Models...', 'adwords')
#1 vendor/doctrine/orm/lib/Doctrine/ORM/Mapping/ClassMetadataInfo.php(959): Doctrine\Common\Persistence\Mapping\RuntimeReflectionService->getAccessibleProperty('Shopware\\Models...', 'adwords')
#2 vendor/doctrine/orm/lib/Doctrine/ORM/Mapping/ClassMetadataFactory.php(721): Doctrine\ORM\Mapping\ClassMetadataInfo->wakeupReflection(Object(Doctrine\Common\Persistence\Mapping\RuntimeReflectionService))
#3 vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/AbstractClassMetadataFactory.php(214): Doctrine\ORM\Mapping\ClassMetadataFactory->wakeupReflection(Object(Doctrine\ORM\Mapping\ClassMetadata), Object(Doctrine\Common\Persistence\Mapping\RuntimeReflectionService))
#4 vendor/doctrine/orm/lib/Doctrine/ORM/EntityManager.php(281): Doctrine\Common\Persistence\Mapping\AbstractClassMetadataFactory->getMetadataFor('Shopware\\Models...')
#5 engine/Shopware/Components/MultiEdit/Resource/Product/DqlHelper.php(246): Doctrine\ORM\EntityManager->getClassMetadata('Shopware\\Models...')
#6 engine/Shopware/Components/MultiEdit/Resource/Product/DqlHelper.php(377): Shopware\Components\MultiEdit\Resource\Product\DqlHelper->getPrefixedColumns('Shopware\\Models...')
#7 engine/Shopware/Components/MultiEdit/Resource/Product/DqlHelper.php(138): Shopware\Components\MultiEdit\Resource\Product\DqlHelper->buildMapping()
#8 var/cache/production_201608291509/proxies/ShopwareProductionda39a3ee5e6b4b0d3255bfef95601890afd80709ProjectContainer.php(632): Shopware\Components\MultiEdit\Resource\Product\DqlHelper->__construct(Object(Enlight_Components_Db_Adapter_Pdo_Mysql), Object(Shopware\Components\Model\ModelManager), Object(Shopware\Components\ContainerAwareEventManager))
#9 vendor/symfony/dependency-injection/Container.php(314): ShopwareProductionda39a3ee5e6b4b0d3255bfef95601890afd80709ProjectContainer->getMultiEdit_Product_DqlHelperService()
#10 engine/Shopware/Components/DependencyInjection/Container.php(182): Symfony\Component\DependencyInjection\Container->get('multi_edit.prod...', 1)
#11 engine/Shopware/Components/DependencyInjection/Container.php(138): Shopware\Components\DependencyInjection\Container->doLoad('multi_edit.prod...', 1)
#12 var/cache/production_201608291509/proxies/ShopwareProductionda39a3ee5e6b4b0d3255bfef95601890afd80709ProjectContainer.php(620): Shopware\Components\DependencyInjection\Container->get('multi_edit.prod...')
#13 vendor/symfony/dependency-injection/Container.php(314): ShopwareProductionda39a3ee5e6b4b0d3255bfef95601890afd80709ProjectContainer->getMultiEdit_ProductService()
#14 engine/Shopware/Components/DependencyInjection/Container.php(182): Symfony\Component\DependencyInjection\Container->get('multi_edit.prod...', 1)
#15 engine/Shopware/Components/DependencyInjection/Container.php(138): Shopware\Components\DependencyInjection\Container->doLoad('multi_edit.prod...', 1)
#16 engine/Shopware/Controllers/Backend/ArticleList.php(301): Shopware\Components\DependencyInjection\Container->get('multi_edit.prod...')
#17 engine/Library/Enlight/Controller/Action.php(159): Shopware_Controllers_Backend_ArticleList->getGrammarAction()
#18 engine/Library/Enlight/Controller/Dispatcher/Default.php(523): Enlight_Controller_Action->dispatch('getGrammarActio...')
#19 engine/Library/Enlight/Controller/Front.php(223): Enlight_Controller_Dispatcher_Default->dispatch(Object(Enlight_Controller_Request_RequestHttp), Object(Enlight_Controller_Response_ResponseHttp))
#20 engine/Shopware/Kernel.php(176): Enlight_Controller_Front->dispatch()
#21 vendor/symfony/http-kernel/HttpCache/HttpCache.php(487): Shopware\Kernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#22 engine/Shopware/Components/HttpCache/AppCache.php(255): Symfony\Component\HttpKernel\HttpCache\HttpCache->forward(Object(Symfony\Component\HttpFoundation\Request), true, NULL)
#23 vendor/symfony/http-kernel/HttpCache/HttpCache.php(258): Shopware\Components\HttpCache\AppCache->forward(Object(Symfony\Component\HttpFoundation\Request), true)
#24 engine/Shopware/Components/HttpCache/AppCache.php(103): Symfony\Component\HttpKernel\HttpCache\HttpCache->pass(Object(Symfony\Component\HttpFoundation\Request), true)
#25 shopware.php(101): Shopware\Components\HttpCache\AppCache->handle(Object(Symfony\Component\HttpFoundation\Request))
#26 {main}

Nun weiss ich nicht genau, was ich vergessen habe, zu machen? Feld nochmal anlegen und einfach mit "leben" und nicht nutzen?

Replace Hook funktioniert nicht

$
0
0

Hallo,

ich möchte gerne die gesamte Funktion getContent überschreiben. Die Funktion ist dafür zuständig, dass zB der Artikelname beim Anfrageformular in das Feld Artikel übergeben wird.

HIer möchte ich ein weiteres Case für ein weiteres Anfrageformular haben. Erweitere ich die Core-Funktion, dann klappt das auch so wie ich möchte.

   case "detail":
                            if ($this->Request()->getParam('sOrdernumber', null) !== null) {
                                $getName = Shopware()->Modules()->Articles()->sGetArticleNameByOrderNumber($this->Request()->getParam('sOrdernumber'));
                                $text = Shopware()->Snippets()->getNamespace('frontend/detail/comment')->get('InquiryTextArticle');
                                $text .= " " . $getName;
                                $this->_elements[$id]["value"] = $text;
                                $element["value"] = $text;
                            }
                            break;
                            //für ein zweites Anfrage Formular
                     case "test":
                     if (!empty($this->Request()->sOrdernumber)){
                        $getName = Shopware()->Modules()->Articles()->sGetArticleNameByOrderNumber($this->Request()->sOrdernumber);
                        $text = "Mein Text: Blabla  ".$getName;
                        $this->_elements[$id]["value"] = $text;
                        $element["value"] = $text;
                     }
                     break;

Da dies natürlich nicht updatefähig ist, wollte ich die Änderung über ein Plugin realisieren, was einfach nicht klappt. Die Shopwarebeschreibung dazu ist eher mau, von daher die Frage.

Ich habe nun einen Hook erstellt und registriert:

 private function subscribeEvents()
    {

       		 $this->subscribeEvent(
            'Shopware_Controllers_Frontend_Forms::getContent::replace',
            'replacegetContent'
        );


    }

 

Dann wollte ich die komplette Funktion überschreiben:

	 protected function replacegetContent(Enlight_Hook_HookArgs $arguments)
    {
    		Funktion 1zu1 hier wieder aufrufen und mit der kleinen Änderung überschreiben
}  

Leider funktioniert das nicht, ich bekomme im Pluginmanager ein 500 Internal Server Error. Das Plugin liegt unter frontend im Ordner test, darin die Bootstrap.php.

Ich komme hier nicht weiter. Wenn ich den Hook unten wegnehmen, auch dann gibt es den 500er Fehler. Scheinbar ist also vielleicht schon ein Fehler bei der Registrierung, ich mache das aber genauso wie in der Doku beschrieben und finde hier keinen Fehler.

Vielleicht kann mir jemand etwas auf die Sprünge helfen.

Vielen Dank!

 

API OrmException

$
0
0

Guten Abend,

beim Aufruf der REST API bekomme ich beim Erstellen von Artikeln folgenden Fehler:

[Shopware\Components\Api\Exception\OrmException]
  A new entity was found through the relationship 'Shopware\Models\Article\De
  tail#article' that was not configured to cascade persist operations for ent
  ity: Shopware\Models\Article\Article@00000000683efb31000000003b5541e6. To s
  olve this issue: Either explicitly call EntityManager#persist() on this unk
  nown entity or configure cascade persist  this association in the mapping f
  or example @ManyToOne(..,cascade={"persist"}). If you cannot find out which
   entity causes the problem implement 'Shopware\Models\Article\Article#__toS
  tring()' to get a clue.    

Ich habe leider keinerlei Idee, wo dieser herkommt.

Ich habe keine Änderungen am Core durchgeführt o.ä. Nur der API Call wird ausgeführt.

Hat jemand ne Idee, wie ich hier vorgehen kann?

Vielen Dank für die Hilfe!

Coolbax Ebay Artikelexport Plugin geht nicht??

$
0
0

Hallo,

 

ich arbeite mit der SW 5.2.6 und wollte jetzt mal das Ebay Artikelexport Plugin von Coolbax ausprobieren. Jedoch kommen seit der Installation massig Fehlermeldungen, zudem kann ich die Themes nicht mehr Kompilieren.

Hat einer schon diese erfahrungen gemacht bzw. weis wo die Lösung des Problems zu finden ist.

Ich bin leider nicht der Crack daher kann ich mit der Fehlermeldung nicht viel anfangen.

 Ups! Ein Fehler ist aufgetreten! Die nachfolgenden Hinweise sollten Ihnen weiterhelfen. SQLSTATE[42S02]: Base table or view not found: 1146 Table 'usrdb_mazwqesr1.s_plugin_externalorder_order_details' doesn't exist in engine/Library/Zend/Db/Statement/Pdo.php on line 234 Stack trace: #0 engine/Library/Zend/Db/Statement.php(303): Zend_Db_Statement_Pdo->_execute(Array) #1 engine/Library/Zend/Db/Adapter/Abstract.php(480): Zend_Db_Statement->execute(Array) #2 engine/Library/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query('\r\n\t\tSELECT SQL_...', Array) #3 engine/Library/Enlight/Components/Db/Adapter/Pdo/Mysql.php(96): Zend_Db_Adapter_Pdo_Abstract->query('\r\n\t\tSELECT SQL_...', Array) #4 engine/Library/Zend/Db/Adapter/Abstract.php(737): Enlight_Components_Db_Adapter_Pdo_Mysql->query('\r\n\t\tSELECT SQL_...', Array) #5 engine/Shopware/Plugins/Community/Backend/CbaxConnectorEbayArticle/Controllers/Backend/EbayArticle.php(221): Zend_Db_Adapter_Abstract->fetchAll() #6 engine/Library/Enlight/Controller/Action.php(159): Shopware_Controllers_Backend_EbayArticle->getListedArticlesAction() #7 engine/Library/Enlight/Controller/Dispatcher/Default.php(523): Enlight_Controller_Action->dispatch('getListedArticl...') #8 engine/Library/Enlight/Controller/Front.php(223): Enlight_Controller_Dispatcher_Default->dispatch(Object(Enlight_Controller_Request_RequestHttp), Object(Enlight_Controller_Response_ResponseHttp)) #9 engine/Shopware/Kernel.php(176): Enlight_Controller_Front->dispatch() #10 vendor/symfony/http-kernel/HttpCache/HttpCache.php(487): Shopware\Kernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #11 engine/Shopware/Components/HttpCache/AppCache.php(255): Symfony\Component\HttpKernel\HttpCache\HttpCache->forward(Object(Symfony\Component\HttpFoundation\Request), true, NULL) #12 vendor/symfony/http-kernel/HttpCache/HttpCache.php(258): Shopware\Components\HttpCache\AppCache->forward(Object(Symfony\Component\HttpFoundation\Request), true) #13 engine/Shopware/Components/HttpCache/AppCache.php(103): Symfony\Component\HttpKernel\HttpCache\HttpCache->pass(Object(Symfony\Component\HttpFoundation\Request), true) #14 shopware.php(101): Shopware\Components\HttpCache\AppCache->handle(Object(Symfony\Component\HttpFoundation\Request)) #15 {main}

Zudem kann ich die Testversion anhand der Auftretenden Fehler so garnicht ausprobieren.

Sortierung von Varianten (Optionen, API)

$
0
0

Hallo!

Ich war bisher noch nicht in der Lage eine eigene Sortierreihenfolge für Varianten zu übertragen und stoße daher das Thema erneut an.
Alle anderen Sachen klappen, nur die Sortierung bleibt ein Dorn im Auge. Folgendes Beispiel:

configuratorSet Inhalt des Vater-Artikels


array(1) {
  ["groups"]=>
  array(2) {
    [0]=>
    array(2) {
      ["name"]=>
      string(5) "DIN A"
      ["options"]=>
      array(2) {
        [0]=>
        array(3) {
          ["name"]=>
          string(6) "DIN A3"
          ["optionId"]=>
          int(110)
          ["position"]=>
          string(1) "4"
        }
        [1]=>
        array(2) {
          ["name"]=>
          string(6) "DIN A4"
          ["optionId"]=>
          int(113)
          ["position"]=>
          string(1) "3"
        }
      }
    }
    [1]=>
    array(2) {
      ["name"]=>
      string(5) "Farbe"
      ["options"]=>
      array(2) {
        [0]=>
        array(3) {
          ["name"]=>
          string(4) "Blau"
          ["optionId"]=>
          int(111)
          ["position"]=>
          string(1) "4"
        }
        [1]=>
        array(2) {
          ["name"]=>
          string(7) "Schwarz"
          ["optionId"]=>
          int(112)
          ["position"]=>
          string(1) "3"
        }
      }
    }
  }
}

Die Position wird in der Article API Ressource nur überschrieben, wenn keine gegeben ist (Zeile 997).
Was die eigentliche Problematik glaube ich ist, dass hier die API die einzelnen Optionen teils mehrfach durchläuft.

Beispiel: KindA ist DINA3 und Schwarz, KindB ist DINA4 und Schwarz.
Beide teilen sich die gleiche Option (da die Option einmalig ist inkl. ID) aber in unterschiedlichen Sets, es kann aber in der Konstellation nur eine Position geben.
Und zwar nur die Position der Option, aber nicht die Position der Option in einer Gruppe in einem Set - korrekt?
oder habe ich da etwas falsch verstanden? ...

Schöne Grüße,
Niklas

Viewing all 2871 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>