Как показать адресные поля в реестре

16

Я пытался сделать это register.phtml, но у меня ничего не вышло. Я тоже не могу найти local.xmlфайл.

Как я могу включить это? Это действительно важная вещь в моем магазине.

Yardi
источник
найти этот код <? php if ($ this-> getShowAddressFields ()):?> в register.phtml
Амит Бера
я нахожу это, но что я должен сделать?
Ярди
просто удалите это , если coditions если ($ this-> getShowAddressFields ()): код теперь показать все адресное поле в форме
Amit Бера
@AmitBera Я не одобряю этот подход, ответ Reindex'EmAll является более подходящим подходом.
Даррен Фелтон
@ Ярди local.xmlдолжен существовать в app/design/frontend/{PACKAGE_NAME}/{THEME_NAME}/layout/local.xml. Имя пакета, скорее всего, «default» или «rwd», в зависимости от версии Magento. Название темы будет уникальным для вашего сайта (что-то отличное от «по умолчанию»). Если вы не настроили свой сайт для расширения темы по умолчанию, вам, вероятно, следует ознакомиться с этой темой, прежде чем вносить дополнительные изменения в скрипты основного вида Magento.
Даррен Фелтон

Ответы:

30

Создайте local.xmlфайл (если он еще не существует) в [your_package]/[your_theme]/layout/папке и добавьте следующий код:

<customer_account_create>
    <reference name="customer_form_register">
        <action method="setData"><key>show_address_fields</key><value>1</value></action>
    </reference>
</customer_account_create>
Лорд скелетор
источник
Эй, у тебя хорошие и потрясающие знания XML. Снимаем шляпу
Амит Бера
Это должно быть помечено как ответ.
janw
Я согласен и проголосовал по этому вопросу. Это более быстрое решение.
KiD Cajes
Ничего себе, +1 от меня, это сработало. Хорошее спасибо
Теджа Бхагаван Коллепара
+1 от меня. Я думал, что это getShowAddressFields()проверяет некоторые настройки в бэкэнде, но нигде не смог его найти. Любая идея, почему это должно быть из XML, а не из конфига?
Адарш Хатри
2

Шаг 1

Сначала в режиме администратора от magento включите и найдите регистрацию по пути как

/app/design/frontend/base/default/template/customer/form/register.phtml

Шаг 2

найти

 <?php if($this->getShowAddressFields()): ?>

Перед добавлением следующей строки

<?php $this->setShowAddressFields(true) ?>

Шаг: Final

Это следующее изменение, как показано ниже

<?php $this->setShowAddressFields(true) ?>

<?php if($this->getShowAddressFields()): ?>
matinict
источник
1
Я думаю , что лучше , чтобы добавить этот параметр с помощью файла макета , как описано здесь magento.stackexchange.com/a/25180/23264
electroid
0

Создайте файл local.xml в папке макета вашей темы и поместите код ниже.

<customer_account_create> 
<reference name="customer_form_register"> 
  <action method="setShowAddressFields">
  <param>true</param>
</action> 

АРВИНД КАРКАР
источник