Как добавить новое настраиваемое поле на странице учетной записи клиента и в административной области? - PullRequest
0 голосов
/ 05 декабря 2011

Я знаю, что об этом, возможно, уже спрашивали раньше, но через сеть я не получаю ни одного правильного рабочего сообщения по моей проблеме.Поэтому подумал о том, чтобы спросить его сам.

Я хотел бы создать настраиваемое поле "Компания" для моей учетной записи клиента и страницы редактирования.Я также хотел бы видеть это поле в административной области в разделе «Управление клиентами» вместе с другими полями, такими как Id, Имя, Электронная почта, Группа, Телефон, Страна и т. Д.

Я знаю, что лучший бит будетсоздать пользовательский модуль, но каков точный способ сделать это так, чтобы вновь созданный модуль отражался как во внешней части (регистрация и редактирование страниц A / C), так и в области внутренней части (администратор).

Пожалуйста,Буду очень признателен, если кто-нибудь скажет мне точный способ сделать это.

Заранее спасибо.

1 Ответ

1 голос
/ 06 декабря 2011

Я нашел решение. Это этот файл, который нужно редактировать для добавления дополнительного столбца в сетку управления клиентами.

Приложение / код / ​​ядро ​​/ Mage / AdminHtml / Block / Клиенты / Grid.php

    protected function _prepareCollection()
    {
       $collection = Mage::getResourceModel(‘customer/customer_collection’)
       // …
      // ADD THIS TO THE END:
      ->joinAttribute(
      ‘billing_company’, ‘customer_address/company’, ‘default_billing’, null, ‘left’);
      // …
    }

А к столбцам:

protected function _prepareColumns()
    {
       $this->addColumn(‘company’, array(
       ‘header’ => Mage::helper(‘customer’)->__(‘Company’),
       ‘index’ => ‘billing_company’));
        ...
    }

И если нужно добавить поле «Компания» в «Реестре клиентов» и редактировать страницы, им нужно отредактировать файлы customer / form / register.phtml, edit.phtml и добавить

      <label for="company"><?php echo $this->__('Company') ?></label>
                    <div class="input-box">
                        <input type="text" name="company" id="company"       value="<?php echo $this->htmlEscape($this->getFormData()->getCompany()) ?>" title="<?php echo $this->__('Company') ?>" class="input-text" />
                    </div>

Вот и все !! Надеюсь, это кому-нибудь поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...