Customer create account template comes from path “persistent/”. Why is that?
-
12-12-2019 - |
Question
In my localhost/Magento, my theme path is base/default
.
I try to edit my PHTML file for Create Account.
Basicly this file came from app/design/frontend/base/default/template/customer/form/register.phtml
but in my case register.phtml
file come from
app/design/frontend/base/default/template/persistent/customer/form/register.phtml
Why this happening? What is persistent?
Solution
Starting with version CE-1.6 (I think) there is a new module added to Magento. Mage_Persistent
.
This offers a "Remember me" feature when you log in. If this is enabled a cookie is set and the user is allowed to access some personal data (cart, wishlist) without the need to log in.
I don't know why this approach was taken. It would have been easier just to include this functionality directly in the Mage_Customer
module.
Maybe this was intended at first to be available only in Enterprise and that's why is a separate module, but I'm just speculating.
The idea is that this module replaces the templates of some blocks in order to make the Remember me
functionality available.
The replaced templates are the customer login and register and the checkout login and billing steps.
To see what and how is replaced check /app/design/frontend/base/default/layout/persistent.xml
layout file.
OTHER TIPS
Even though the question is old think answering this would help someone searching for this. Creating the register.phtml under our custom (active theme) will be used instead of the presistance template. So the new templates path will be something like this.
frontend\MY_THEME\default\template\persistent\customer\form\register.phtml
Use the register.phtml found on the default path and carry on the changes on your new template.