cancel
Showing results for 
Search instead for 
Did you mean: 

Theme not showing

Theme not showing

Hi there,

I have a dev store using Magento ver. 2.3.0 running on CentOS 7, under nginx and php-fpm.

I have done an import of config and products from my legacy 1.9.x Magento store and am trying to create a new theme.

I followed the steps in https://devdocs.magento.com/guides/v2.3/frontend-dev-guide/themes/theme-create.html to create a basic theme with the structure as follows:

 

├── a1
│   └── lws
│       ├── composer.json
│       ├── etc
│       │   └── view.xml
│       ├── registation.php
│       ├── theme.xml
│       └── web
│           ├── css
│           ├── fonts
│           └── images
│               └── logo.svg

 

composer.json

{
    "name": "magento/theme-frontend-lws",
    "description": "N/A",
    "config": {
        "sort-packages": true
    },
    "require": {
        "php": "~7.1.3||~7.2.0",
        "magento/framework": "*",
        "magento/theme-frontend-blank": "*"
    },
    "type": "magento2-theme",
    "license": [
        "OSL-3.0",
        "AFL-3.0"
    ],
    "autoload": {
        "files": [
            "registration.php"
        ]
    }
}

theme.xml

<theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd">
    <title>A1:LWS</title>
    <parent>Magento/blank</parent>
</theme>

registration.php

<?php
/**
 * Copyright © 2015 Magento. All rights reserved.
 * See COPYING.txt for license details.
 */
\Magento\Framework\Component\ComponentRegistrar::register(
    \Magento\Framework\Component\ComponentRegistrar::THEME,
    'frontend/a1/lws',
    __DIR__
);

However when I clean and flush the cache and reload the themes page in the admin it still only shows the existing Blank and Luma themes.  Also I notice the content of app/design/frontend/Magento is empty, although I can apply those themes to my store and they work.

 

Any ideas please?

 

7 REPLIES 7

Re: Theme not showing

Hello @A1Ben 

 

Run below commands once:

 

php bin/magento setup:upgrade
php bin/magento setup:static-content:deploy -f
php bin/magento cache:flush
sudo chmod -R 0777 var/ pub/ generated/
Manish Mittal
https://www.manishmittal.com/

Re: Theme not showing

Hello @A1Ben 

 

So you have created theme under the Magento namespace ? what's your theme path ?

 

it should be like app/design/frontend/VendorName/ThemeName - so here in your case it should be like this - app/design/frontend/a1/lws

 

Also after creating new theme, you will also require to run upgrade command !

 

so run below command in the sequence :

 

php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento setup:static-content:deploy -f
php bin/magento cache:clean
php bin/magento cache:flush

Then check from the admin panel - you will able to see your theme on theme list !

 

hope it helps !

if issue solved,Click Kudos & Accept as Solution

Re: Theme not showing

Thank you @Manthan Dave and @Manish Mittal 

My theme install path is app/design/frontend/a1/lws

 

I tried the superset of you suggestions, however it's not worked, I still don't see my new theme?

 

i.e.

 

 

$ bin/magento setup:upgrade

Cache cleared successfully
File system cleanup:

[... etc... ]

Nothing to import.

$ bin/magento setup:di:compile
Compilation was started.
Interception cache generation... 7/7 [============================] 100% 2 mins 327.0 MiB
Generated code and dependency injection configuration successfully.
[root@Unknown-08-00-27-c8-bc-a6 magento2]# bin/magento setup:static-content:deploy -f

Deploy using quick strategy
frontend/Magento/blank/en_US 2245/2245 ============================ 100% % 28 secs
adminhtml/Magento/backend/en_US 2315/2315 ============================ 100% % 28 secs
frontend/Magento/luma/en_US 2261/2261 ============================ 100% % 34 secs

Execution time: 147.5245950222



$ bin/magento cache:clean

Cleaned cache types:
config
layout
block_html
collections
reflection
db_ddl
compiled_config
eav
customer_notification
config_integration
config_integration_api
full_page
config_webservice
translate
vertex
$ bin/magento cache:flush

Flushed cache types:
config
layout
block_html
collections
reflection
db_ddl
compiled_config
eav
customer_notification
config_integration
config_integration_api
full_page
config_webservice
translate
vertex
$ sudo chmod -R 0777 var/ pub/ generated/

Refreshed and logged back in but still not there.

 

 

I note that after running 

bin/magento setup:static-content:deploy -f

...my theme isn't being seen.  

 

Any more ideas?

Re: Theme not showing

Hello @A1Ben 

 

Then i think there might be a naming convention issue, below i am posting code with directory structure of theme - kindly replace with your once and then check !

 

Directory Structure should be like below :

 

app/design/frontend/Atest/lws

Registration code like below :

 

<?php
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

\Magento\Framework\Component\ComponentRegistrar::register(
    \Magento\Framework\Component\ComponentRegistrar::THEME,
    'frontend/Atest/lws',
    __DIR__
);

theme.xml file code like below : 

 

<theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd">
    <title>Atest:LWS</title>
    <parent>Magento/blank</parent>
</theme>

Then again run all those command and then check !

 

Also to debug more check in core_config_data table as well - your theme entry is showing or not - after doing all the changes check there as well !

 

Hope it helps !

 

 

if issue solved,Click Kudos & Accept as Solution

Re: Theme not showing

Hey @Manthan Dave 

Sorry for the slow response - I thought I'd replied but it got lost somehow Smiley Frustrated

I tried renaming the vendor dir plus the registration & theme changes as you suggested (although I have used this vendor name before on another project so I think it is OK...) and a complete re- upgrade/compile/deploy/clean/flush but still not showing.

Here's my db:

 

mysql> select * from theme \G;
*************************** 1. row ***************************
     theme_id: 1
    parent_id: NULL
   theme_path: Magento/blank
  theme_title: Magento Blank
preview_image: preview_image_5c4f60de86268.jpeg
  is_featured: 0
         area: frontend
         type: 0
         code: Magento/blank
*************************** 2. row ***************************
     theme_id: 2
    parent_id: NULL
   theme_path: Magento/backend
  theme_title: Magento 2 backend
preview_image: NULL
  is_featured: 0
         area: adminhtml
         type: 0
         code: Magento/backend
*************************** 3. row ***************************
     theme_id: 3
    parent_id: 1
   theme_path: Magento/luma
  theme_title: Magento Luma
preview_image: preview_image_5c4f60de95d54.jpeg
  is_featured: 0
         area: frontend
         type: 0
         code: Magento/luma
3 rows in set (0.00 sec)

mysql> select * from core_config_data where path='design/theme/theme_id';
+-----------+--------+----------+-----------------------+-------+
| config_id | scope | scope_id | path | value |
+-----------+--------+----------+-----------------------+-------+
| 770 | stores | 1 | design/theme/theme_id | 1 |
+-----------+--------+----------+-----------------------+-------+
1 row in set (0.01 sec)

Weird huh?  Any other ideas how I can debug it please?

 

Re: Theme not showing

hi,

 I am not sure what you did miss here.  but you following tutorial for create basic theme.

https://blog.qaisarsatti.com/magento_2/magento-2-create-simple-theme/

i thinks you have spelling mistake or miss the command 

 

php bin/magento setup:upgrade

to install the theme.

Find helpful ? Consider Giving Kudos to this post.
Problem solved? Click Accept as Solution!"
Qaisar Satti

Re: Theme not showing

in M23 4 the theme is not working . May I ask wkat u ised for forums ?