Magento Bulk Update-Attribute

7

Hey Leute, ich vermisse die SQL aus Bulk Update-Attribute von SKU / UPC

Running EE1.10 FYI

Ich habe den ganzen Rest des Codes funktioniert, aber ich bin mir nicht sicher, wer / was / warum tatsächlich aktualisieren unsere Attribute, und waren nicht in der Lage, sie zu finden, meine Logik ist

  1. Öffnen Sie eine CSV-Datei und greifen Sie alle skus- und assoziierten Attribute in ein 2D-Array
  2. ein
  3. Parsen Sie die SKU in eine entity_id
  4. Nehme die Entity_id und das Attribut und führe Updates bis zum Ende
  5. aus
  6. Nimm den Rest des Tages seit seinem Freitag

Hier ist mein (fast abgeschlossener) Code, ich würde GREATly einige Hilfe schätzen.

%Vor%

Siehe meine Antwort für den Produktionscode. Hoffe, das hilft jemandem in der Magento-Community.

    
ehime 27.04.2012, 18:04
quelle

2 Antworten

24

Das mag technisch funktionieren, aber der Code, den Sie geschrieben haben, ist nur der letzte Weg, den Sie tun sollten.

In Magento sollten Sie wirklich die vom Code bereitgestellten Modelle verwenden und keine Datenbankabfragen selbst schreiben.

In Ihrem Fall, wenn Sie Attribute für 1 oder viele Produkte aktualisieren müssen, gibt es eine Möglichkeit für Sie, dies sehr schnell (und ziemlich sicher) zu tun.

Wenn Sie in /app/code/core/Mage/Adminhtml/controllers/Catalog/Product/Action/AttributeController.php nachsehen, werden Sie feststellen, dass dieser Controller für die schnelle Aktualisierung mehrerer Produkte vorgesehen ist.

Wenn Sie in der Funktion saveAction () nachsehen, finden Sie die folgende Codezeile:

%Vor%

Dieser Code ist verantwortlich für die Aktualisierung aller Produkt-IDs, die Sie möchten, nur die geänderten Attribute für jeweils einen einzelnen Store.

Der erste Parameter ist im Grunde ein Array von Produkt-IDs. Wenn Sie nur ein einzelnes Produkt aktualisieren möchten, legen Sie es einfach in ein Array.

Der zweite Parameter ist ein Array, das die Attribute enthält, die Sie für die angegebenen Produkte aktualisieren möchten. Wenn Sie beispielsweise den Preis auf 10 € und das Gewicht auf 5 setzen möchten, übergeben Sie das folgende Array:

%Vor%

Schließlich ist das dritte und letzte Attribut die Geschäfts-ID, mit der diese Aktualisierungen durchgeführt werden sollen. Höchstwahrscheinlich wird diese Zahl entweder 1 oder 0 sein.

Ich würde mit diesem Funktionsaufruf herumspielen und diesen verwenden, anstatt eigene Datenbankabfragen zu schreiben und zu pflegen.

    
Josh Pennington 29.04.2012, 18:50
quelle
0

Allgemeine Update-Abfrage wird wie folgt aussehen:

%Vor%

Um den mit dem Attribut verbundenen [backend_type] zu finden:

%Vor%

Sie können weitere Informationen aus dem folgenden Blogartikel erhalten:
Ссылка

Hoffe das hilft dir.

    
MagePsycho 04.05.2012 16:07
quelle

Tags und Links