Anyone with knowledge of CSS and image manipulation can create a new theme for PrestaShop.
We recommend using the Firefox plugin Firebug for easy comparison and debugging between your CSS and the output.
Follow the steps below to create a new theme for PrestaShop.
1. Copy the default theme
- Locate the
../themesdirectory and create a copy of the default
- Rename the duplicate.
2. Modify the CSS sheet
- In the new theme folder (e.g.,
../themes/MyStoreTheme/), locate the
- Open the
global.cssfile and modify it according to your needs.
maintenance.cssfile, located in the same folder, controls the layout of the Maintenance Mode page.
- New or modified images must be placed in the new theme's
Tips from the PrestaShop development team
- Where possible, use CSS instead of HTML (e.g., only use tables for tabular data, not for layout)
- Validate your XHTML and CSS code using the W3C tools: HTML validator, CSS validator.
- Reduce images and pictures size by using compression
- Test your theme on several Web browsers
- Keep filenames lowercase
- Homepage text and logo are modifiable directly via the Back Office. Go to Back Office >> Modules >> Home text editor and click Configure.
- Change the positioning of modules on a page or pages by transplanting them via the Back Office:
- Go to Back Office >> Modules >> Positions
- Click Transplant a module.
- In the drop-down list, select the module you want to move.
- In the second drop-down list, select where you want to transplant the module.
- Type the name of those files you do not want the module to appear (optional).
- Click Save.
3. Create preview screen shot
When your theme is ready, you must place a file representing the theme called
preview.jpg in the theme’s root folder (e.g.,
../themes/MyStoreTheme). This file must be a 100 × 100 pixels .jpg file.
4. Test your theme
- Go to Back Office >> Preferences >> Appearance >> Themes section
- Select the new theme and click Save.
Share your themes!
Show off your hard work, get feedback, and build your reputation by sharing your theme in the Themes section of our Forum.