Комментарии других к этому посту помогли мне найти решение, которое сработало.Для меня просто установка цены уровня на false - это то, что было необходимо, чтобы предотвратить ее перезапись / изменение.
$product->setTierPrice(false);
Я лично предпочитаю эту опцию некоторым другим решениям, поскольку она чиста, проста, неНе устанавливайте поддельные значения, и это работает.С этой точки зрения я бы предпочел, чтобы решение, представленное GregC, работало, поскольку оно просто загружало цену уровня, но в моем тестировании оно не работало должным образом - цена уровня все еще была удалена.
Вот модифицированная версия кода из ОП.
foreach ($productCollection as $product) {
$formatted_sku = $product->getSku();
$config = $product->getMediaConfig();
// JPG files verification
$jpg_file = $images_folder.$formatted_sku.".".$extension[0];
if (file_exists($jpg_file) ) {
$fileurl = $config->getMediaUrl($jpg_file);
$product->addImageToMediaGallery($jpg_file, $visibility, false, false);
$product->setTierPrice(false); // set tier price to false to prevent it from being overwritten
$product->save();
}
}
Этот код был протестирован и использован с Magento EE 1.14.12.0