Lubię dodawać nowe pole w formularzu rejestracji klienta i tworzeniu klienta administracyjnego.
Nazwa pola to numer licencji . Przeszukałem tak wiele linków związanych z moim wymaganiem, ale te nie działają w Magento (1.9). Nawet ja znalazłem związane z tym rozszerzenie:
http://www.magentocommerce.com/magento-connect/custome-account-profile-13594.html
Kiedy zainstalowałem powyższe rozszerzenie za pomocą klucza, pokazuje błąd. Czy możesz podać jakiś pomysł związany z moim wymaganiem?
magento-1.9
customer-account
forms
sentil
źródło
źródło
Odpowiedzi:
Musisz utworzyć nowe rozszerzenie, aby było czyste.
Nazwijmy rozszerzenie
StackExchange_Customer
.Potrzebne będą następujące pliki:
app/etc/modules/StackExchange_Customer.xml
- plik deklaracjiapp/code/local/StackExchange/Customer/etc/config.xml
- plik konfiguracyjnyapp/code/local/StackExchange/Customer/sql/stackexchange_customer_setup/install-1.0.0.php
- plik instalacyjny. Dodaje nowy atrybut.app/code/local/StackExchange/Customer/Helper/Data.php
- główny pomocnik modułuSpowoduje to dodanie atrybutu do klienta.
Powinien dobrze działać na backend.
Niestety musisz teraz ręcznie edytować szablony interfejsu, ponieważ Magento nie ma żadnego zdarzenia ani pustego bloku, w którym możesz umieścić swoje pola.
W tym celu potrzebujesz:
app/design/frontend/base/default/layout/stackexchange_customer.xml
A teraz szablony.
app/design/frontend/base/default/template/stackexchange_customer/register.phtml
- szablon rejestracji.W tym celu utwórz klon
/app/design/frontend/{package}/{theme}/template/persistent/customer/form/register.phtml
i po prostu wstaw go gdzieś w formularzu. Nie muszę tutaj publikować pełnego pliku. Ułóż to jak chcesz/app/design/frontend/base/default/template/stackexchange_customer/form/edit.phtml
Dla tego jednego klonu/app/design/frontend/{package}/{theme}/template/customer/form/edit.phtml
i wstaw gdzieś w formularzu:Możesz także utworzyć plik tłumaczenia. To nie jest obowiązkowe, ale dobrze jest mieć
app/locale/en_US/StackExchange_Customer.csv
Wyczyść pamięć podręczną i powinieneś być ustawiony.
źródło
app/code/local/StackExchange/Customer/sql/stackexchange_customer_setup/install-1.0.0.php
plikiem. Ponieważ moduł został już zainstalowany, nowy skrypt instalacyjny nie uruchomi się ponownie. Aby ponownie uruchomić, musisz usunąć z tabelieav_attribute
atrybut z kodem,license_number
a z tabelicore_resource
rekord z kodemStackExchange_Customer
. Wyczyść pamięć podręczną i odśwież stronę. Skrypt instalacyjny powinien zostać uruchomiony ponownie.install-1.0.0
sięupgrade-1.0.0-1.0.1
i robić swoje modyfikacje w sklonowanego pliku. Następnie zmieńversion
tagconfig.xml
na1.0.1
. Zobacz, jak działają skrypty aktualizacji: magento.stackexchange.com/q/26313/146Dzięki Marius, tylko jedno, pole nie wyświetla się w kasie informacje rozliczeniowe do rejestracji.
Jak sprawić, aby pole pojawiło się podczas rejestracji w kasie?
Dzięki
źródło