¿Cómo crear un tema en la versión estable de magento 2?


10

¿Cómo crear un tema en la versión estable de magento 2?

Hay tutoriales disponibles para Beta pero no estables.

Los pasos que tomé son los siguientes:

Carpeta creada dentro de app / design / frontend / Themevendorname / Themename / en ese creado theme.xml & composer.json

pero cuando fui a admin stores->configuration->General->Designen ese menú desplegable de Tema de diseño ... allí no se muestra el nuevo tema.

Aquí están las líneas de composer.json

{
    "name": "themevendorname/theme-frontend-themename",
    "description": "N/A",
    "require": {
        "php": "~5.4.11|~5.5.0",
        "magento/framework": "0.1.0-alpha107",
        "magento/magento-composer-installer": "*"
    },
    "type": "magento2-theme",
    "version": "0.1.0-alpha107",
    "extra": {
        "map": [
            [
                "*",
                "frontend/themevendorname/themename"
            ]
        ]
    }
}

Por favor revise la imagen adjunta. Otra cosa es que también creé una carpeta llamada theme-frontend-themename dentro de la carpeta vendor-> magento y puse las mismas carpetas aquí también, pero aún no obtengo ese tema en admin store-> configuration-> General-> Design en ese Design Theme desplegable.

Cualquier ayuda por favor.

ingrese la descripción de la imagen aquí

Respuestas:


6

Cualquier módulo, tema o idioma en Magento2 estable, debe crear un registration.phparchivo en el directorio que contiene module / theme / language. La carga automática de Composer carga todos los archivos registration.phpantes de ejecutar Magento2.

Un registration.phparchivo de un tema en el siguiente app/design/<area>/<Vendor>/<theme_name>/:

<?php

\Magento\Framework\Component\ComponentRegistrar::register(
  \Magento\Framework\Component\ComponentRegistrar::THEME,
'<area>/<VendorName>/<theme_name>',  
__DIR__
);

1
Muchas gracias Bill ... déjame comprobarlo rápidamente y volveré :) Gracias de nuevo :)
KA9

Hola Bill, ¿puedes decir la ubicación exacta de la carpeta del módulo porque hay muchas carpetas de módulos disponibles?
KA9

3
necesitas crearlo enapp/design/<area>/<Vendor>/<theme_name>/
Thao Pham

1
No puedo explicarle correctamente esta pregunta, pero creo que en la versión estable, Magento quiere el archivo central en vendor/magento/*Magento y pronto llegará a Market Place, quieren instalar, actualizar todos los archivos centrales, de terceros a través del compositor en el vendordirectorio.
Thao Pham

1
Hola, recomendamos desarrollar en aplicación / código o aplicación / diseño, que es cómo se organiza el Magento 2 GitHub si lo clonas. Tu registration.phple dice al componente que se instale vendorcada vez que alguien lo implemente.
Steve Johnson

0

puedes usar este enlace:

http://devdocs.magento.com/guides/v2.0/frontend-dev-guide/themes/theme-create.html

-Agregue o copie desde un theme.xml existente a su directorio de aplicaciones / design / frontend //

-Configurarlo usando el siguiente ejemplo:

<theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd">
 <title>New 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>

-Agregar registro.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/<Vendor>/<theme>',
    __DIR__
);
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.