Jak wyświetlić pola adresu w rejestrze

16

Próbowałem to zrobić register.phtml, ale to nie działało dla mnie. Nie mogę też znaleźć local.xmlpliku.

Jak mogę to włączyć? To jest naprawdę ważna rzecz w moim sklepie.

Yardi
źródło
znajdź ten kod <? php if ($ this-> getShowAddressFields ()):?> at register.phtml
Amit Bera
znajduję to, ale co powinienem zrobić?
Yardi
po prostu usuń to, jeśli kodacje if ($ this-> getShowAddressFields ()): kod teraz pokazuje wszystkie pola adresu w formie
Amit Bera
@AmitBera Odradzam takie podejście, odpowiedź Reindex'EmAll jest bardziej odpowiednia.
Darren Felton
@ Yardi local.xmlpowinien istnieć w app/design/frontend/{PACKAGE_NAME}/{THEME_NAME}/layout/local.xml. Nazwa pakietu jest najprawdopodobniej „domyślna” lub „rwd” w zależności od wersji Magento. Nazwa motywu będzie unikalna dla Twojej witryny (coś innego niż „domyślny”). Jeśli nie skonfigurowałeś swojej witryny do rozszerzania domyślnego motywu, prawdopodobnie powinieneś przeczytać ten temat przed wprowadzeniem dalszych zmian w skryptach widoku podstawowego Magento.
Darren Felton

Odpowiedzi:

30

Utwórz local.xmlplik (jeśli jeszcze nie istnieje) w [your_package]/[your_theme]/layout/folderze i dodaj następujący kod:

<customer_account_create>
    <reference name="customer_form_register">
        <action method="setData"><key>show_address_fields</key><value>1</value></action>
    </reference>
</customer_account_create>
Lord Skeletor
źródło
Hej, masz dobrą i niesamowitą wiedzę XML. Czapki z głów
Amit Bera
To powinno być oznaczone jako odpowiedź.
janw
Zgadzam się i głosowałem w tej sprawie. To jest szybsze rozwiązanie.
KiD Cajes
Wow, +1 ode mnie, zadziałało. Dobrze dziękuję
Teja Bhagavan Kollepara
+1 ode mnie Myślałem, że getShowAddressFields()sprawdzam niektóre ustawienia w backend, ale nigdzie nie mogłem ich znaleźć. Wiesz, dlaczego musiał pochodzić z xml, ale nie z config?
Adarsh ​​Khatri
2

Krok 1

Najpierw w trybie dewelopera administratora magento i znajdź rejestrację ze ścieżki jak

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

Krok 2

Odnaleźć

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

Tuż przed dodaniem następującego wiersza

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

Krok: końcowy

Ta następująca zmiana wygląda jak poniżej

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

<?php if($this->getShowAddressFields()): ?>
matinict
źródło
1
Myślę, że lepiej jest dodać ten parametr poprzez plik układu, jak opisano tutaj magento.stackexchange.com/a/25180/23264
electroid
0

Utwórz plik local.xml w folderze układu motywu i umieść poniżej kodu.

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

ARVIND KARKAR
źródło