[英]Can't apply custom theme in Magento 2
是否有人尝试在Magento 2中安装自定义主题? 我正在尝试在Magento 2中应用自定义主题,以便可以开始测试,但是我真的不知道从哪里开始。 文件结构完全不同,我无法让Magento 2接收主题文件。 有人可以指导我吗?将不胜感激。
非常感谢!
要使主题正常工作,请从app / design / frontend / Magento / blank复制theme.xml和媒体文件夹,并对主题进行相应更改。 希望它对您有所帮助,以启动主题。
创建主题目录
要为您的Magento 2主题创建目录,您需要转到:/ app / design / frontend。 在前端目录下,根据您的主题供应商名称创建一个新目录:/ app / design / frontend / themename(我为主题名称供应商选择名称),在主题供应商目录下,为您的Magento 2主题创建一个目录:/ app /设计/前端/主题名称/ m2-主题。
创建此结构后,您需要声明您的Magento 2主题,以便Magento系统知道它的存在,并且可以在您的Magento 2后端中将主题设置为当前主题。
声明您的Magento 2主题
现在,您需要在app / design / frontend / Themename / m2-theme / theme.xml下创建theme.xml文件,并使用以下代码:
<theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd"> <title>m2-theme</title> <parent>Magento/Luma</parent> <media> <preview_image>media/m2-theme-image.jpg</preview_image> </media> </theme>
在标记中,插入主题的名称,在标记中,您可以指定父主题以进行备用。 我正在使用Luma主题。
在标签中,我声明了一个主题图像。 这是一张缩略图,显示在主题页面的Magento 2管理员中,因此我们可以预览主题外观。 缩略图图像位于app / design / frontend / Themename / m2-theme / media / m2-theme-image.jpg中。 确保此缩略图位于正确的位置。 如果您没有在正确的位置放置此文件,则在Magento 2管理员中访问主题页面时会收到错误消息。
使您的Magento 2主题成为Composer软件包
在您的主题目录中添加一个composer.json文件:app / design / frontend / Themename / m2-theme / composer.json以在包装服务器上注册该软件包。 主题依赖项信息中提供了此文件。 Magento的默认公共包装服务器为https://packagist.org/ 。 使用以下代码:
{ "name": "Themename/m2-theme", "description": "N/A", "require": { "php": "~5.5.0|~5.6.0|~7.0.0", "Themename/m2-theme": "100.0.*", "magento/framework": "100.0.*" }, "type": "magento2-theme", "version": "100.0.1", "license": [ "OSL-3.0", "AFL-3.0" ], "autoload": { "files": [ "registration.php" ] } }
添加registration.php注册您的Magento 2主题
要在Magento系统中注册主题,您需要在主题目录中创建registration.php文件:app / design / frontend / Themename / m2-theme / registration.php,并在您的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/Cloudways/m2-theme', __DIR__ );
目录结构在Magento 2
完成主题声明和注册后,您需要为主题布局,样式和模板文件创建目录结构。 在下面,您可以查看主题目录的外观。 我正在使用自己的供应商和目录名称。
/app/design/frontend/Themename/m2-theme/theme.xml
/app/design/frontend/Themename/m2-theme/registration.php
/app/design/frontend/Themename/m2-theme/composer.json
/ app / design / frontend / Themename / m2-theme / media
/app/design/frontend/Themename/m2-theme/media/m2-theme-image.jpg
/ app / design / frontend / Themename / m2-theme / web
/ app / design / frontend / Themename / m2-theme / web / css
/ app / design / frontend / Themename / m2-theme / web / css / source
/ app / design / frontend / Themename / m2-theme / web / css / fonts
/ app / design / frontend / Themename / m2-theme / web / css / images
/ app / design / frontend / Themename / m2-theme / web / css / js
/ app / design / frontend / Themename / m2-theme / etc
/app/design/frontend/Themename/m2-theme/etc/view.xml
/ app / design / frontend / Themename / m2-theme / Magento_Theme
/ app / design / frontend / Themename / m2-theme / Magento_Theme / layout
/app/design/frontend/Themename/m2-theme/Magento_Theme/layout/default.xml
将在主题文件夹的CSS,js,字体和图像所在的位置创建web文件夹。 如果Magento 2没有外观文件夹,这些文件将放在此处。
我们已经在etc目录下使用view.xml文件创建了view.xml文件。 我们配置Magento 2目录图像的大小等。
在Magento 2 Admin中应用和配置主题
将主题添加到文件系统后,一切准备就绪,可以激活主题并将其应用于商店。 转到Magento 2后端,然后转到内容>设计>主题。 并确保您的主题出现在此列表中。
当您可以在此列表中看到主题时,请转到商店>配置>设计,然后选择新创建的主题
Magento 2主题的结构肯定不同。
首先,在app / design / frontend中创建一个新的主题目录。
其次,通过以下方式声明新主题:
第三,在admin中应用和配置主题:-运行Upgrade Command。 -应用主题。 -部署。
有关更详细的教程,请转到创建Magento 2主题指南 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.