在Magento中编辑子主题

时间:2017-11-07 22:08:07

标签: php magento themes magento2

我通过向C:\ xampp \ htdocs \ magento \ app \ design \ frontend \ Magento \ themename

添加文件创建了一个子主题

在这里我有一个theme.xml文件,一个registration.php文件,一个web文件夹,一个媒体文件夹和一个Magento_Theme文件夹。

我的问题如下:

此子主题使用C:\ xampp \ htdocs \ magento \ vendor \ magento \ theme-frontend-blank结构。对于我的主页,我将如何更改头文件。它有顶级菜单,搜索和徽标。我怎么能重新安排这个?甚至是主页。我如何为此制作新的布局,可能有3/5列的正常内容和2/5的最新产品内容(例如)。

任何指示都很棒!

1 个答案:

答案 0 :(得分:0)

更改标题

覆盖徽标:将vendor\magento\module-theme\view\frontend\templates\html\header.phtml复制到app\design\frontend\Magento\themename\Magento_Theme\templates\html\header.phtml并根据需要进行修改。

覆盖topmenu:将vendor\magento\module-theme\view\frontend\templates\html\topmenu.phtml复制到app\design\frontend\Magento\themename\Magento_Theme\templates\html\topmenu.phtml并根据需要进行修改。

覆盖搜索框:它有点不同。将vendor\magento\module-search\view\frontend\templates\form.mini.phtml复制到app\design\frontend\Magento\themename\Magento_Search\templates\form.mini.phtml并根据需要进行修改。

参考:

创建布局

  1. 使用以下内容创建文件app\design\frontend\Magento\themename\Magento_Theme\page_layout\new-layout.xml

    <?xml version="1.0" ?>
    <layout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_layout.xsd">
        <update handle="2columns-left"/>
    </layout>
    
  2. 使用以下内容创建文件app\design\frontend\Magento\themename\Magento_Theme\page_layout\layouts.xml

    <page_layouts xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/PageLayout/etc/layouts.xsd">
        <layout id="new-layout">
            <label translate="true">My New Layout</label>
        </layout>
    </page_layouts>
    
    1. 编写CSS文件以声明宽度:

      .page-layout-new-layout .column.left {
          width: 60%;
          float: left;
          -ms-flex-order: 1;
          -webkit-order: 1;
          order: 1;
      }
      
      
      .page-layout-new-layout .column.main {
          width: 40%;
          float: right;
          -ms-flex-order: 2;
          -webkit-order: 2;
          order: 2;
      }
      
    2. 清除缓存

  3. 参考: