Magento: change applied attribute product types

Sometimes it is necessary to change the product type(s) an attribute is applied to in Magento. A common example is, that you designed and implemented an attribute for a configurable product, because you thought its real world value is equal over all child manifestations. But after a while you realize, that there are differences that you […]

Magento change attribute scope in setup script

This code snippet shows how to change attribute scope in a setup script: <?php /* @var $oInstaller Mage_Catalog_Model_Resource_Setup */ $oInstaller = $this; $oInstaller->startSetup(); $oInstaller->updateAttribute( ‘catalog_product’, ‘abc_attribute’, ‘is_global’, Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE ); $oInstaller->updateAttribute( ‘catalog_product’, ‘xyz_attribute’, ‘is_global’, Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE ); $oInstaller->endSetup(); // mark index as “reindex required” $aIndexerCodes = [ ‘catalog_product_attribute’, ‘catalog_product_flat’, ‘catalogsearch_fulltext’ ]; $oIndexer = Mage::getModel(‘index/process’); foreach ($aIndexerCodes as $sCode) […]

Install CMS blocks with your module

You can do this as shown in the following example: <?php /* @var $installer Mage_Core_Model_Resource_Setup */ $oInstaller = $this; $oInstaller->startSetup(); $oCmsBlocks = [ [ ‘title’ => ‘Footer bar for benefits’, ‘identifier’ => ‘footer-bar’, ‘content’ => <<<HTML <ul> <li>Shop Benefit 1</li> <li>Shop Benefit 2</li> <li>Shop Benefit 3</li> <li>Shop Benefit 4</li> <li>Customer Service (D): <a href=”tel:08008828838″ class=”tel”>0800 […]