Форум → Программирование → PHP для идиотов → Magento → Import products & multiple images
Import products & multiple images
-
Так уж случилось, что вычитал такую тему: мол разработчики magento, сделали, что если в импорте несколько картинок, то дефайлтная ставиться в 0…
В инете нашел пару sql-ин, которые привязаны к id-шнику через аттрибут, но id-шники аттрибутов поменялись, и "всё пропало" :)
Пришлось писать скрипт-фиксер. Вопрос чисто к NRG, это сделано для пущего зароботка на поддержке? или скрипт можно выложить? -
16 декабря 2010 г. 13:38, спустя 9 минут 8 секунд
-
16 декабря 2010 г. 13:38, спустя 23 секунды
выкладывай конечно)
у меня рядом верстальщик-дизайнер ебется все время с какими-то импортами из csv -
16 декабря 2010 г. 13:43, спустя 5 минут 5 секунд
ну ок, только за код не пизьдить, это всего лишь скрипт на скорую руку, ложиться в корень магетны и ставит в дефоулт 1ую картинку<?php
function isExistsIm($obj){
$ret = false;
foreach ($obj as $_image ){
$ret = $_image->getFile();
}
return $ret;
}
require_once 'app/Mage.php';
Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);
$products = Mage::getModel('catalog/product')->getCollection()->addAttributeToSelect('*');
$curr_id = $_GET['id'];
$upd = false;
$next = 0;
foreach ($products as $product) {
if($upd&&($next<1)){
$next = $product->getId();
}
if($curr_id == $product->getId()){
$upd = true;
$gallery = $_gallery = Mage::getModel('catalog/product')->load($curr_id)->getMediaGalleryImages();
if($im = isExistsIm($gallery)){
$prp = Mage::getModel('catalog/product');
$pr = $prp->load($curr_id);
$pr->setSmallImage($im);
$pr->setThumbnail($im);
$pr->save();
}
}
if($next > 0){
echo '<html><meta http-equiv="refresh" content="0;url=/scriptName.php?id='.$next.'"><body>(End:'.(11327-$next).')</body><html>';
} else echo 'DONE';
Вызывать так http://magento/scriptName.php?id={id-шник вашей первой записи}
Тупо, но рабоает xD
Пожалуйста, авторизуйтесь, чтобы написать комментарий!