In this tutorial, Today I will explain to how to create custom theme in Magento 2. Here, steps by step you need to follow Magento 2 theme declaration, registration, how to apply theme in admin etc. By default, Magento 2 provides 2 themes – Luma & Blank.
Let’s follow the below steps :
You may also like this :
1) First of all, Create registration.php file at app/design/frontend/RH/Custom/ and paste the below code to register theme :
<?php /** * Created By : Rohan Hapani */ use \Magento\Framework\Component\ComponentRegistrar; ComponentRegistrar::register(ComponentRegistrar::THEME, 'frontend/RH/Custom', __DIR__);
2) After that, To define custom theme Create theme.xml file at app/design/frontend/RH/Custom/ and paste the below code :
<!-- /** * Created By : Rohan Hapani */ --> <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd"> <title>RH Custom</title> <parent>Magento/blank</parent> <media> <preview_image>media/preview.png</preview_image> </media> </theme>
Make sure you added preview.png file at app/design/frontend/RH/Custom/media/ directory location.
3) In Last, It’s not neccessary file. But, you can create a composer.json file at app/design/frontend/RH/Custom/ for theme dependency information and paste the below code :
{ "name": "rh/custom", "description": "N/A", "config": { "sort-packages": true }, "require": { "php": "~5.5.0|~5.6.0|~7.0.0|~7.1.0|~7.2.0|~7.3.0", "magento/theme-frontend-blank": "*", "magento/framework": "*" }, "type": "magento2-theme", "license": [ "OSL-3.0", "AFL-3.0" ], "autoload": { "files": [ "registration.php" ] } }
Now, Just upgrade & deploy your instance :
php bin/magento s:up php bin/magento s:s:d -f php bin/magento c:c
Now, check your theme added in theme list or not.
- Go to Admin -> Content -> Design -> Themes
To apply your custom theme :
- Go to Admin -> Content -> Design -> Configuration
Now, Edit record and open Applied Theme dropdown and select your theme and then, save configuration.
That’s it !!!
I hope this blog is easy to understand about how to create custom theme in Magento 2. In case, I missed anything or need to add some information, always feel free to leave a comment in this blog, I’ll get back with proper solution.
Keep liking and sharing !!