**修改模板并增加block**
步驟:
1.創建目錄文件(以clatalog模塊為例)
~~~
app/design/frontend/
├── <Vendor>/
│ │ ├──...<theme>/
│ │ │ ├── Magento_Catalog
│ │ │ | | ├──layout
| | | | | | |——catalog_category_view.xml
~~~
~~~
catalog_category_view.xml(這里的文件名字由于是繼承請保持與原來的一致)
<?xml version="1.0"?>
<!--
/**
* Copyright ? 2015 Magento. All rights reserved.
* See COPYING.txt for license details.
*/
-->
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="2columns-left" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
<body>
<referenceBlock name="category.image">
<action method='setTemplate'>
<argument name='template' xsi:type='string'>Njzz_Catalog::category/image.phtml</argument>
</action>
</referenceBlock>
</body>
</page>
name="category.image":你要修改的那個模板的名字;
Njzz_Catalog::category/image.phtml:你的模板位置
~~~
2.創建目錄文件(以clatalog模塊為例)
~~~
code/
├── <Vendor>/
│ │ ├──Clatalog/
│ │ │──Block/Catalog/Category/View.php
│ │ │──Controller/
| | |──etc/
| | | |——frontend
|——routes.xml
| | | |——module.xml
|——di.xml
| | |——View
| | | |——frontend
|——templates
|——category
|——image.phtml
| | |——composer.json
| | |——registration.php
~~~
routes.xml :路由配置
~~~
<?xml version="1.0"?>
<!--
/**
* Copyright ? 2015 Magento. All rights reserved.
* See COPYING.txt for license details.
*/
-->
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/etc/routes.xsd">
<router id="standard">
<route id="catalog" frontName="catalog">
<module name="Njzz_Catalog" />
</route>
</router>
</config>
id="catalog":路由id
name="Njzz_Catalog" :配置作用模塊
~~~
module.xml
~~~
<?xml version="1.0"?>
<!--
/**
* @copyright Copyright (c) 2015 X.commerce, Inc. (http://www.magentocommerce.com)
*/
-->
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
<module name="Njzz_Catalog" setup_version="2.0.86">
</module>
</config>
~~~
image.phtml 模板文件
~~~
<?php
/**
* Category view template
*
* @var $block Njzz\Block\Catalog\Category\View
*/
?>
<?php
$_helper = $this->helper('Magento\Catalog\Helper\Output');
$_category = $block->getCurrentCategory();
$_imgHtml = '';
if ($_imgUrl = $_category->getImageUrl()) {
$_imgHtml = '<div class="category-image"><img src="' . $_imgUrl . '" alt="' . $block->escapeHtml($_category->getName()) . '" title="' . $block->escapeHtml($_category->getName()) . '" class="image" /></div>';
$_imgHtml = $_helper->categoryAttribute($_category, $_imgHtml, 'image');
/* @escapeNotVerified */ echo $_imgHtml;
}
$index=$block->index();
?>
/**
* Category view template
*
* @var $block Njzz\Block\Catalog\Category\View:自己在block寫的類 命名空間 這樣你在image.phtml中才能調 $index=$block->index();
*/
~~~
View.php:block文件
~~~
<?php
/**
* Created by PhpStorm.
* User: daimingkang
* Date: 2016/3/9
* Time: 9:49
*/
namespace Njzz\Catalog\Block\Catalog\Category;
//這里繼承是擴充方法也可以覆蓋父類方法
class View extends \Magento\Catalog\Block\Category\View{
public function index(){
var_dump($_SERVER);
}
}
~~~
di.xml:配置
~~~
<?xml version="1.0"?>
<!--
/**
* Copyright ? 2015 Magento. All rights reserved.
* See COPYING.txt for license details.
*/
-->
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
<preference for="Magento\Catalog\Block\Category\View" type="Njzz\Catalog\Block\Catalog\Category\View" />
</config>
for="Magento\Catalog\Block\Category\View":原來的方法類的命名空間+類名
type="Njzz\Catalog\Block\Catalog\Category\View":現在類的命名空間+類名
~~~
composer.json
~~~
{
"name": "Njzz/Catalog",
"description": "N/A",
"require": {
"php": "~5.5.0|~5.6.0|~7.0.0"
},
"type": "magento2-module",
"version": "100.0.0",
"license": [
"OSL-3.0",
"AFL-3.0"
],
"autoload": {
"files": [ "registration.php" ],
"psr-4": {
"Njzz\\Catalog\\": ""
}
}
}
~~~
registration.php
~~~
<?php
/**
* Copyright ? 2015 Magento. All rights reserved.
* See COPYING.txt for license details.
*/
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::MODULE,
'Njzz_Catalog',//
__DIR__
);
~~~
圖片:


- 前端開發
- 前端開發人員指南
- 介紹
- 主題模塊路徑規則符號
- 主題Themes
- 概括
- 創建主題
- magento主題結構
- 應用和配置管理主題
- 配置圖片屬性主題
- 主題繼承
- 定位模板,布局和樣式
- 布局layout
- 布局說明
- 布局文件類型
- 擴展繼承布局
- 覆蓋布局
- 公共布局任務定制
- 自定義布局圖
- 模板Templates
- 模板定制演練
- 模板的基本概念
- 定制的模板插圖
- 定制電子郵件模板
- 模板XSS安全
- 層疊樣式表(css)
- 載入css
- magento繼承修改模板.phtml
- 只修改phtml文字內容
- 在magento的block之前加內容
- PHP開發
- PHP開發人員指南
- 開發路線圖
- composer簡介
- 常見術語表
- 準備(開發快速啟動)
- 組件類型和版本
- 有關組件文件結構
- 路線圖制定和包裝組件
- 建立
- composer.json文件
- 創建組件文件結構
- 定義你的配置文件
- 注冊您的組件
- URN架構驗證
- 命名部件
- 組件加載順序
- 啟用或禁用組件
- package包
- 打包組件
- 更新
- 驗證
- 測試你的組件
- 加入CLI命令
- 命令命名指南
- 如何添加CLI命令
- 組件開發
- 服務合同
- 公共接口和API
- 服務合約設計模式
- 依賴注入
- 實例化對象與工廠
- 代理
- 代碼生成
- EAV和擴展屬性
- Magento的插件
- 路由
- 索引
- 配置服務網絡的API
- 向后兼容性
- 消息隊列
- 在開發過程中清除目錄
- magento設置
- magento開發模式設置
- magento安裝中文語言包
- 創建一個新的block
- magento后臺操作
- 調試-頁面phtml所在的目錄
- magento添加分類
- 添加屬性
- 屬性組
- 組合商品
- 配置商品
- 虛擬商品
- 捆綁商品
- 可下載商品
- 商品促銷設置
- CMS頁面設置
- block使用
- connect使用
- 多店鋪
- 聯系我們
- paypal設置
- 物流運費
- 網站地圖
- 訂單處理
- 賬號管理
- 網站貨幣設置
- google分析
- 頁面默認設置
- Magento技巧積累
- 常用技巧
- magento2更改商品圖片在網站中不同位置的大小
- magento的view里面的default.xml