Drupal Commerce XML import

makgab képe

Üdv!

Drupal Commerce-be próbált már valaki XML formából termékeket betölteni?
Gondolom kellene hozzá a commerce_feeds modul is, mert kezeli az XML-t.
Konkrétan ebből kellene áttölteni.

Megoldható a feeds modullal v. kell hozzá programozni is egy kicsit?

Drupal verzió: 
makgab képe

Importálni hogyan lehet a commerce-be? Feltettem a commerce_feeds, feeds modulokat, de sehol nincs importálási lehetőség.
Találtam videókat a drupal commerce_feeds használatáról, de ott megjelent a "Felépítés" (Structure) menüben egy "Feeds importers" almenü, ami nálam nincs.
Mit hagyhatok ki?

0
0
makgab képe

Teszt környezetben a CSV import működött.

0
0
makgab képe

A commerce_product_save() fv-t próbálom meghívni scriptből, hogy rögzítsek egy terméket. Működik is, de az árat nem tudom mivel kellene megadni. Nem találom, hogy melyik mezővel lehet elmenteni az árat.
Ezeket próbáltam:

...
$product->price = '100';
$product->amount = '100';
$product->commerce_price = '100';
$product->commerc_price = array ('amount' => '100');
commerce_product_save($product);

Hiba nincs, csak nem menti el az árat.

Van ötlete valakinek?

0
0
dj képe

úgy épülnek fel, hogy van nekik egy nyelvi hivatkozásuk és egy delta értékük, aztán mezeje válogatja, általában egy 'value' kulcs jár hozzájuk.

Neked viszont egy egész tömböd van ami az értéket és a pénznemet hivatott tárolni:

$product->commerce_price[LANGUAGE_NONE][0] = array(
   'amount' => 100,
   'currency_code' => 'HUF',
);
1
0

Üdv!
Dudás József

makgab képe

köszönöm, működik.

0
0
makgab képe

A termékeknek van egy saját mezője (pl. 'sid'). Ez alapján szeretnék keresni egy terméket.
Van erre lehetőség valamilyen függvénnyel? Vagy ha más nincs, hogy tudnék végig menni az összes terméken és úgy vizsgálni ezt a 'sid' mezőt?

0
0
makgab képe

Ezzel nem tudtam a 'product_id'-nek értéket adni, mivel gondolom azt a commerce maga adja/generálja. Pedig ez lett volna a legjobb:

$product = commerce_product_new('product');
$product->product_id = $sid;

Így a külső 'sid' egyenlő lett volna a 'product_id'-vel. De sajna nem fogadja el. :(
Ezért kellett egy külső id mezőt bevezetnem, ami alapján kellene keresnem.
Van ötlete valakinek?

0
0
makgab képe

A képet hogy tudám importálni a Commerce-be?
(base64 kódolt string van az xml-ben)

A commerce_product_save($product) előtt beállítom a field_image értékeit:

...
$product->field_image[LANGUAGE_NONE][0] = array(
 'uid' => $product_q->uid,
 'filename' => $filename,
 'uri' => $uri,
 'filemime' => $mime,
 'status' => '1',
 'timestamp' => time(),
 'width' => //... stb.,
 );

és feltöltöm (elmentem) a base64 stringből a képet (pl. public://commerce/image.jpg)?

Vagy van a kép elmentésére külön valamilyen meghívható függvény? A drupal image_save() függvénye meghívható ilyenkor?

0
0
makgab képe

Megoldottam.
A terméktípusokhoz (product_type) mindegyikhez(!) hozzá kell rendelni a "Kép" (field_image) mezőt.
Érdekesen kezeli a commerce a terméktípusokat, a beépített mezőket külön hozzá kell rendelni a terméktípusokhoz (pl. Kép -> field_image), míg az egyedi mezőket nem kell, azok automatikusan hozzárendelődnek. Nem is engedi felvinni az egyedi mezőket a többi terméktípushoz.
Biztos van benne logika...

0
0
makgab képe

API-ból is hozzá lehet adni mezőt a product_type-hoz?
Nem nagyon látok rá fv-t.

0
0