Please could some one post a guide on the removal of 'required' telephone field in checkout based on the magento layout Version 1.8.0.0, the majority of current googled resources are out of date and no longer work.
This would seem the perfect place to keep an updated how-to / guide.
It would be helpful if some one could confirm the working solution by downloading Magento 1.8.0.0 and providing proof of it's removal, these code snippets are sometimes helpful, but we have yet to find a working solution in an easy to read / documented fashion.
Best Answer
Before
1.8.1
I'm not aware of any ways to make this work, you have to either override the abstract core class in the local code pool or rewrite every single child class (ugly, I know).From
1.8.1
on, they introduced the eventcustomer_address_validation_after
. I got rid of the validation by using reflexion, even if I'm not too proud of it. Might not solve your problem, but I thought I'd post it anyway.I also wrote an update script to define the filed as not required, and edited all forms to remove the frontend validation. Like I said, it might not be the best solution, but it's better than rewriting 3-4 classes IMHO.
UPDATE The core team wrapped the event
customer_address_validation_after
in a conditional starting from1.9.0
through1.9.1.1
(I really wonder why, makes no sense to me...) so my solution won't work for these versions, unfortunately. The conditional was luckily removed in1.9.2
.