テーマが管理パネルリストmagento2に表示されない


11

新しいテストテーマを作成するだけですが、管理パネルのテーマリストに表示されません

app/design/frontend/Magento/mytheme/theme.xml

<theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd">
     <title>My theme</title> <!-- your theme's name -->
     <parent>Magento/blank</parent> <!-- the parent theme, in case your theme inherits from an existing theme -->
     <media>
         <preview_image>media/preview.jpg</preview_image> <!-- the path to your theme's preview image -->
     </media>
 </theme>

同様の問題があります。唯一の違いは、「Magento」とは異なるベンダー名で新しい空白のテーマを作成したことです。それは許されますか?だから私の構造は、私はapp/code/design/mycompany/mynewtheme/それを機能させることができないだけです-管理パネルにはLumaとMagentoの空白のデフォルトのテーマしかありません、私が作成した新しいテーマはありません。
スタムスター2016年

展開してcontentpub/staticフォルダを確認しましたか?あなたがあなたのコードで新しい質問を投稿するなら、私は素晴らしいでしょう。
Qaisar Satti、2016

回答:


8

自分で考え出す。私は逃していた

app/design/frontend/Magento/mytheme/composer.json

{
    "name": "magento/theme-frontend-blank",
    "description": "N/A",
    "require": {
        "php": "~5.5.0|~5.6.0|~7.0.0",
        "magento/theme-frontend-blank": "100.0.*",
        "magento/framework": "100.0.*"
    },
    "type": "magento2-theme",
    "version": "100.0.1",
    "license": [
        "OSL-3.0",
        "AFL-3.0"
    ],
    "autoload": {
        "files": [
            "registration.php"
        ]
    }
}

app/design/frontend/Magento/mytheme/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/Magento/mytheme',
    __DIR__
);

参照


6

私の場合、Magento 2のルートフォルダーから次のコマンドを実行した後に機能しました。

php bin/magento setup:upgrade

それが機能しない場合は、次のコマンドを実行できますsudo

sudo php bin/magento setup:upgrade

5

新しいテーマを作成する手順に従います。

ステップ:1(app / design / frontend / Magento / companyname内のtheme.xml)

<theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd">
    <title>Magento Companyname</title>
    <parent>Magento/luma</parent>
    <media>
        <preview_image>media/preview.jpg</preview_image>
    </media>
</theme>

ステップ:2(app / design / frontend / Magento / companyname内のregistration.php)

このファイルで、テーマfrontend / Magento / companynameの定義済みの値に会社名を小文字使用する必要があります

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

ステップ:3 composer.json(app / design / frontend / Magento / companyname内のcomposer.json)

{
    "name": "magento/theme-frontend-companyname",
    "description": "N/A",
    "require": {
        "php": "~5.5.0|~5.6.0|~7.0.0",
        "magento/theme-frontend-luma": "100.0.*",
        "magento/framework": "100.0.*"
    },
    "type": "magento2-theme",
    "version": "100.0.2",
    "license": [
        "OSL-3.0",
        "AFL-3.0"
    ],
    "autoload": {
        "files": [
            "registration.php"
        ]
    }
}

5

Magento 2.1.6にカスタムテーマが表示されないという同様の問題がありましたが、Magento Dev Docs- http: //devdocs.magento.com/guides/v2.1に記載されている手順に従ってファイルが正しいようです。/frontend-dev-guide/themes/theme-create.html

私の問題は、ローカルホストで実行されている速度の問題が原因で、開発者ではなく本番に設定されているモードが原因である可能性があります。

ただし、シェルで次のコマンドを実行するまで、テーマは表示されないことがわかりました...

php bin/magento cache:clean
php bin/magento setup:upgrade 
php bin/magento setup:static-content:deploy

多分あなたは開発者モードを設定しませんでした。
カイサーサッティ2017

@QaisarSattiこれは本当です、私はローカルホストでの遅い問題のために本番モードで実行していました。
Shaun Newrick

1
回答でもプロダクションモードについて言及する必要があります
Qaisar Satti

2

私も同じ問題を抱えていました。誤って、registration.phpの代わりにregistration.xmlを作成しました


0

以下の手順に従ってください

ステップ:1(theme.xml)

<theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd">
    <title>Magento Apple</title>
    <parent>Magento/luma</parent>
    <media>
        <preview_image>media/preview.jpg</preview_image>
    </media>
</theme>

ステップ:2(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/Magento/Apple',
    __DIR__
);

ステップ:3 composer.json

{
    "name": "magento/theme-frontend-apple",
    "description": "N/A",
    "require": {
        "php": "~5.5.0|~5.6.0|~7.0.0",
        "magento/theme-frontend-luma": "100.0.*",
        "magento/framework": "100.0.*"
    },
    "type": "magento2-theme",
    "version": "100.0.2",
    "license": [
        "OSL-3.0",
        "AFL-3.0"
    ],
    "autoload": {
        "files": [
            "registration.php"
        ]
    }
}

もっと詳しく


私はこれらの手順に従いましたが、うまくいきましたが、タイトルを変更して親テーマを追加するためにtheme.xmlファイルを変更する必要がありましたが、変更は更新されません。キャッシュを無効にしているので、他に何を試したらいいのかわかりません。
jstuardo 2016
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.