1

I have added a new field to the registration form but I am struggling to place it in the correct location. I want to locate it between "Last name" & "Email", its currently below the "sign up for newsletter" checkbox.

How do i do it?

WHAT IVE DONE TO TRY AND RESOLVE MY ISSUE

This field is generated from the data I added to the database so just moving template code around doesn't appear to be an option.

Looking at the template hints the field is generated by frontend/customforms/default/template/customer/form/userattributes.phtml and frontend/customforms/default/template/customer/form/renderer/text.phtml and customer.xml and the node <customer_form_template_handle> removing one will stop the field from being generated.

It would appear making some adjustment to a block would be the answer, maybe by adding it to the local.xml in my custom theme. But what is the best way, do I add all 50 lines of <customer_form_template_handle>?

1 Answer 1

2

There are 2 types of attributes for customers and customer addresses. System attributes and User defined attributes.
The type of the attribute is determined by the flag is_system in the customer_eav_attribute.
The attributes displayed by the template customer/form/userattributes.phtml are the user defined ones (is_system = 0).
The other attributes like name, e-mail and so on need to have an input set manually.
So in order to add a field between last name and e-mail, you must set you new attribute as is_system = 1 and then manually put the html markup in the registration form right where you want it.

1
  • I have is_visible set to 1 and the field has been added to customtheme/areaname/template/customer/widget/name.phtml. It now shows up between lastname and email, but username is also being displayed below the newsletter checkbox. In addition to this username that I have added to the template is not recognised as a mandatory field
    – tony09uk
    Feb 6, 2014 at 15:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.