Magento - Adminhtml - веб-сайт по умолчанию в новой форме клиента - PullRequest
4 голосов
/ 27 января 2011

Я разрабатываю интернет-магазин для своего покупателя, и у нас есть только один веб-сайт в нашей настройке Magento.

В админ-панели, когда я захожу на экран «Добавить клиента», в поле «Связать с веб-сайтом» я вижу «Admin», выбранный по умолчанию. Я хотел бы, чтобы мой веб-сайт был там по умолчанию.

Я думаю, что одним из возможных способов было бы написать код: Mage_Adminhtml_Block_Customer_Edit_Tab_Account :: initForm

Ответы [ 3 ]

4 голосов
/ 26 января 2015

Самый простой способ сделать это - просто установить значение по умолчанию в вашей базе данных.Это не потребует никаких изменений кода.

UPDATE eav_attribute
SET default_value = 1
WHERE attribute_code = 'website_id'

В приведенном выше примере MySQL для вашего веб-сайта по умолчанию устанавливается значение 1.

2 голосов
/ 15 февраля 2011

Я взял подсказку из ответа Lrrr и заполнил раскрывающийся список только сайтами, добавленными пользователями, то есть «Пожалуйста, выберите» и «Администратор» больше не доступны в качестве параметров, добавив следующую строку:

$form->getElement('website_id')->setValues(Mage::getSingleton('adminhtml/system_store')->getWebsiteValuesForForm());

в конце этой функции:

Mage_Adminhtml_Block_Customer_Edit_Tab_Account::initForm

Конечно, идеальным способом было бы переопределить вышеуказанную функцию в своем собственном модуле, но в нашем случае переопределить вышеуказанную функциюКласс создает конфликт для другого расширения, которое мы установили, поэтому я обошел все вокруг.

2 голосов
/ 07 февраля 2011

Или Вы можете просто отредактировать массив в:

Mage_Customer_Model_Customer_Attribute_Source_Website::getAllOptions()
...