Aturan pertama Magento adalah: Jangan pernah mengedit database secara langsung.
Saya akui saya melanggar aturan ini pada banyak kesempatan, jadi ...
Anda dapat menghapus atribut dari eav_attribute
, kendala dengan ON DELETE CASCADE
harus membersihkan sisa tabel.
Tapi saya masih berpikir Anda harus mengambil jalan yang bersih:
$attributeId = 55;
Mage::getModel('catalog/resource_eav_attribute')->load($attributeId)->delete();
Seharusnya tidak butuh waktu lama dan Anda akan merasa damai dengan diri Anda sendiri karena Anda tidak melanggar aturan.
Tidak penting metode apa yang Anda pilih, tetapi mencadangkan DB Anda, dalam kedua kasus tersebut.
$installer->removeAttribute('catalog_product', 'my_attribute1');
atau$installer->removeAttribute('catalog_category', 'my_attribute2');
Tetapi apakah ada cara untuk menggunakan kode ini dalam file terpisah? Saya ingin menempatkan file dalam folder root (di mana Magentoindex.php
), sehingga akan ada kemungkinan untuk memanggil script di browser web:example.com/delete_attributes.php/
. Bisakah Anda mengarahkan saya ke arah yang benar?