以下のコードを使用して、プログラムで Magento データベースから製品を削除しましたが、このコードは私にとってはうまくいきます。
$productEntityTable = Mage::getModel('importexport/import_proxy_product_resource')->getEntityTable();
if ($idToDelete) {
$this->db->query("DELETE FROM `{$productEntityTable}` WHERE `entity_id` IN (?)", $idToDelete);
echo 'Deleted';
}
しかし、製品画像も削除したいので、以下のコードを使用しました
$_product = Mage::getModel('catalog/product')->load($idToDelete);
$mediaApi = Mage::getModel("catalog/product_attribute_media_api");
try {
$items = $mediaApi->items($_product->getId());
foreach($items as $item) {
echo ($mediaApi->remove($_product->getId(), $item['file']));
}
} catch (Exception $exception){
var_dump($exception);
die('Exception Thrown');
}
そして、次のエラーが発生し、多くのコードを使用しましたが、常に同じエラーが発生しました。
致命的なエラー: 263 行目の /my_path/app/code/local/Mage/Catalog/Model/Product/Attribute/Backend/Media.php の非オブジェクトに対するメンバー関数 getUserId() の呼び出し