Я только что обновил установку Magento с 1.4.1.0 до 1.7.0.2. Теперь у меня ошибка при редактировании категории.
Ошибка говорит:
Fatal error: Call to a member function getAttributeCode() on a non-object in /home/.../domains/.../public_html/app/code/core/Mage/Adminhtml/Block/Catalog/Category/Tab/Attributes.php on line 137
Я нашел несколько тем на форумах по этой же проблеме, но решения не было. Здесь тоже не нашел решения.
Когда я сравниваю Attributes.php из старой версии с новой версией, единственное отличие состоит в этом блоке кода (строки 132–145):
if ($this->getCategory()->getLevel() == 1) {
$fieldset->removeField('custom_use_parent_settings');
} else {
if ($this->getCategory()->getCustomUseParentSettings()) {
foreach ($this->getCategory()->getDesignAttributes() as $attribute) {
if ($element = $form->getElement($attribute->getAttributeCode())) {
$element->setDisabled(true);
}
}
}
if ($element = $form->getElement('custom_use_parent_settings')) {
$element->setData('onchange', 'onCustomUseParentChanged(this)');
}
}
Если я закомментирую весь этот блок, все будет работать нормально. Но есть ли лучшее решение? На самом деле я не понимаю цели этого блока кода.