Installo l'attributo con il seguente script:
$installer = $this;
$installer->startSetup();
$installer->removeAttribute('catalog_product', 'customizableonly');
$installer->addAttribute('catalog_product', 'customizableonly', array(
'group' => 'General',
'input' => 'select',
'type' => 'int',
'label' => 'Customizable Only',
'source' => 'eav/entity_attribute_source_boolean',
'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL,
'visible' => 1,
'required' => 0,
'visible_on_front' => 0,
'is_html_allowed_on_front' => 0,
'is_configurable' => 0,
'searchable' => 0,
'filterable' => 0,
'comparable' => 0,
'unique' => false,
'user_defined' => false,
'default' => 0,
'is_user_defined' => false,
'used_in_product_listing' => true
));
$this->endSetup();
Anche provato con $installer = new Mage_Catalog_Model_Resource_Eav_Mysql4_Setup('core_setup');
E poi sto usando il valore dell'attributo in qualche altro codice. Ma ho sempre null. Ho scoperto che l'attributo non ottiene un valore predefinito. Quando apro un prodotto, viene visualizzato il menu a discesa No, ma quando ottengo il suo valore nel codice lo è null. Se faccio semplicemente clic sul menu a discesa, basta impostare Noe salvare il prodotto: tutto funziona.
Come superare questo?