Notice: You are browsing the documentation for PrestaShop 9,
which is currently in development.
You might want to read the documentation for the current version, PrestaShop 8.
Read the current version of this page
Testing
What makes a theme valid
When you’re trying to select a theme in the backoffice, PrestaShop will test if your theme is valid. It
won’t install if the theme isn’t valid.
A theme is valid if it contains some files and some configuration keys.
Required files
Here is the complete list of required files:
- preview.png
- config/theme.yml
- assets/js/theme.js
- assets/css/theme.css
- templates/_partials/form-field.tpl
- templates/catalog/product.tpl
- templates/catalog/listing/product-list.tpl
- templates/checkout/cart.tpl
- templates/checkout/checkout.tpl
- templates/cms/category.tpl
- templates/cms/page.tpl
- templates/customer/address.tpl
- templates/customer/addresses.tpl
- templates/customer/guest-tracking.tpl
- templates/customer/guest-login.tpl
- templates/customer/history.tpl
- templates/customer/identity.tpl
- templates/index.tpl
- templates/customer/my-account.tpl
- templates/checkout/order-confirmation.tpl
- templates/customer/order-detail.tpl
- templates/customer/order-follow.tpl
- templates/customer/order-return.tpl
- templates/customer/order-slip.tpl
- templates/errors/404.tpl
- templates/errors/forbidden.tpl
- templates/checkout/cart-empty.tpl
- templates/cms/sitemap.tpl
- templates/cms/stores.tpl
- templates/customer/authentication.tpl
- templates/customer/registration.tpl
- templates/contact.tpl
Required configuration keys
Your configuration file config/theme.yml
(read more about this file)
must details some configuration keys.
Here is the list of keys PrestaShop will look for. The dot represent the nesting.
- name
- display_name
- version
- author.name
- meta.compatibility.from
- meta.available_layouts
- global_settings.image_types.cart_default
- global_settings.image_types.small_default
- global_settings.image_types.medium_default
- global_settings.image_types.large_default
- global_settings.image_types.home_default
- global_settings.image_types.category_default
- theme_settings.default_layout