Add a Custom CMS Layout Template in Magento

To add a custom template to Magento is quite simple. Please find simple instructions below:

1. Create a new module

Create the following folder path


Create a file called config.xml in app/code/local/PaulDonnelly/NewTemplates/etc/

Add the following snippet to config.xml

<?xml version=”1.0″?>
<label>Name of your Template e.g. Standard CMS Page (One Column Left)</label>

2. Create the Template File

Create a file called standard-onecol-left.phtml in


You will most likely be using an existing template as a starting point. Just copy the contents from 1column.phtml, 2column-left.phtml, 2columns-right.phtml or 3columns.phtml into standard-onecol-left.phtml. In our example we will be copying the contents of 2column-left.phtml.

3. Activate your new module and CMS Layout

Create a file called PaulDonnelly_NewTemplates.xml in app/etc/modules/

Add the following snippet

<?xml version=”1.0″?>

Upload your new module and you will see a new CMS page listed.

Add a Custom CMS Layout Template in Magento

ShareShare on Facebook0Tweet about this on TwitterShare on Google+0Share on LinkedIn0Share on Reddit0Share on StumbleUpon0

Published by

Paul Donnelly

Hi I'm Paul, an avid Magento Developer from Northern Ireland. With almost 8 years of Magento experience under my belt, I still have a strong passion for it. By day I work as a Senior Ecommerce Developer for one of the top web development agencies in Northern Ireland, Pale Blue Dot. If you'd like to keep up to date with my latest posts and rants, you can follow me on Twitter: @PaulDonnelly

2 thoughts on “Add a Custom CMS Layout Template in Magento”

  1. Good article, thanks. Just one thing to add, the configuration cache may need to be refreshed in order to see the new template depending on whether caching is enabled.

  2. Quick question… How would you go about adding multiple new layouts? Can you change the xml file to accomodate multiple new layouts? Cheers

Leave a Reply

Your email address will not be published. Required fields are marked *

six + 11 =