Magento: сохраните пользовательский атрибут адреса при оформлении заказа
Вот что я сделал на своем веб-сайте: Администратор ->Клиенты->Атрибуты -> Управление атрибутами адресов клиентов и добавление нового атрибута, пользователь может видеть его в своем профиле, в разделе "Мои адреса", новый атрибут может быть отредактирован и сохранен при создании нового адреса, я также могу видеть его в бэкэнде и редактировать, пока здесь все в порядке, моя проблема в оформлении заказа, у меня уже есть поле в формах выставления счетов и доставки, и я хочу, чтобы новый атрибут был сохранен, когда пользователь нажимает кнопку "Оформить заказ", но, похоже, при оформлении заказа он ничего не знает о новом атрибуте, атрибут не сохраняется, и если я сохраню одно значение из профиля пользователя, проверка не загрузит его в поле.
Что я могу здесь сделать??
Спасибо
1 answers
Просмотрев код magento и прочитав вики, я смог завершить, мой новый атрибут был сохранен в форме редактирования адреса в профиле, но не был сохранен, когда я ввел его в форму оформления заказа, это было потому, что мне нужно переопределить некоторые файлы ядра magento, первым шагом было добавление нового атрибута в app\code\core\Mage\Customer\etc\config.xml
, я скопировал в app\code\core\Mycompany\Customer\etc\config.xml
, так как мой новый код атрибута rfc, я нахожу запись <fieldsets>
и
<customer_dataflow>
....
<rfc><billing>1</billing><shipping>1</shipping></rfc>
</customer_dataflow>
Теперь мне нужно добавить новый атрибут к app\code\core\Mage\Customer\Model\Entity\Setup.php
i сделал то же самое для переопределения, скопировал в мое локальное пространство имен, и в функции getDefaultEntities()
я нахожу
'customer_address'=>array(
....
'rfc' => array(
'label' => 'RFC',
'required' => false,
'sort_order' => 135,
),
)
Теперь мне нужно сделать то же самое в app\code\core\Mage\Sales\etc\config.xml
, но теперь должно выглядеть так
<sales_copy_order_billing_address>
.....
<rfc><to_order>*</to_order></rfc>
</sales_copy_order_billing_address>
<sales_copy_order_shipping_address>
......
<rfc><to_order>*</to_order></rfc>
</sales_copy_order_shipping_address>
<sales_convert_quote_address>
........
<rfc><to_order_address>*</to_order_address><to_customer_address>*</to_customer_address></rfc>
</sales_convert_quote_address>
<sales_convert_order_address>
.........
<rfc><to_quote_address>*</to_quote_address></rfc>
</sales_convert_order_address>
<customer_address>
.......
<rfc><to_quote_address>*</to_quote_address></rfc>
</customer_address>
Надеюсь, это может помочь кому-то другому