Thema wird nicht in der Admin-Panel-Liste magento2 angezeigt


11

Ich erstelle gerade ein neues Testthema, aber es wird nicht in der Themenliste des Admin-Panels angezeigt

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>

Ich habe ein ähnliches Problem. Der einzige Unterschied ist, dass ich mein neues leeres Thema mit einem anderen Anbieternamen als "Magento" erstellt habe. Ist das erlaubt Meine Struktur lautet also: app/code/design/mycompany/mynewtheme/Ich kann es einfach nicht zum Laufen bringen - im Admin-Bereich gibt es nur leere Standardthemen für Luma und Magento, es gibt kein neues Thema, das ich erstellt habe.
Stamster

Haben Sie den Ordner contentund bereitgestellt pub/static? Ich werde großartig sein, wenn Sie eine neue Frage mit Ihrem Code posten. Es ist hilfreicher, eine Lösung zu geben.
Qaisar Satti

Antworten:


8

finde es selbst heraus. Ich habe das vermisst

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__
);

Referenz


6

In meinem Fall hat es funktioniert, nachdem ich den folgenden Befehl aus dem Magento 2-Stammordner ausgeführt habe:

php bin/magento setup:upgrade

Wenn es nicht funktioniert, können Sie den Befehl ausführen mit sudo:

sudo php bin/magento setup:upgrade

5

Befolgen Sie die Schritte zum Erstellen eines neuen Themas:

Schritt: 1 (theme.xml in App / Design / Frontend / Magento / Firmenname)

<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>

Schritt: 2 (register.php in App / Design / Frontend / Magento / Firmenname)

In dieser Datei müssen wir den Firmennamen in kleinem Fall für den definierten Wert unseres Theme-Frontends / Magento / Firmenname verwenden .

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

Schritt: 3 composer.json (composer.json in App / Design / Frontend / Magento / Firmenname)

{
    "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

Ich hatte ähnliche Probleme mit meinem benutzerdefinierten Design, das in Magento 2.1.6 nicht angezeigt wurde. Es scheint jedoch, dass meine Dateien gemäß den Anweisungen in Magento Dev Docs - http://devdocs.magento.com/guides/v2.1 korrekt waren /frontend-dev-guide/themes/theme-create.html

Mein Problem war möglicherweise darauf zurückzuführen, dass der Modus eher auf Produktion als auf Entwickler eingestellt war, da auf localhost Geschwindigkeitsprobleme auftraten.

Ich stellte fest, dass das Thema jedoch erst angezeigt wurde, wenn ich Folgendes in der Shell ausgeführt hatte ...

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

Vielleicht haben Sie den Entwicklermodus nicht eingestellt.
Qaisar Satti

@QaisarSatti das ist wahr, ich lief im Produktionsmodus wegen langsamer Probleme auf localhost.
Shaun Newrick

1
Sie müssen den Produktionsmodus auch in Ihrer Antwort erwähnen
Qaisar Satti

2

Ich hatte das gleiche Problem. Ich habe versehentlich die Datei register.xml anstelle der Datei register.php erstellt


0

Befolgen Sie die folgenden Schritte

Schritt: 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>

Schritt: 2 (register.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__
);

Schritt: 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"
        ]
    }
}

Mehr Details


Ich habe diese Schritte befolgt und es hat funktioniert. Ich musste jedoch die Datei theme.xml ändern, um den Titel zu ändern und ein übergeordnetes Thema hinzuzufügen. Die Änderung wird jedoch nicht aktualisiert. Ich habe den Cache deaktiviert, daher weiß ich nicht, was ich sonst noch versuchen soll.
jstuardo
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.