加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – Magento 2覆盖核心框架

发布时间:2020-12-13 22:27:13 所属栏目:PHP教程 来源:网络整理
导读:我想覆盖AbstractBlock类,我尝试使用我的自定义模块,但它无法正常工作 di.xml ?xml version="1.0"?config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd" pre
我想覆盖AbstractBlock类,我尝试使用我的自定义模块,但它无法正常工作

di.xml

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
    <preference for="MagentoFrameworkViewElementAbstractBlock" type="YourCompanyYourModuleFrameworkViewElementAbstractBlock" />
</config>

AbstractBlock.php

<?php
namespace YourCompanyYourModuleFrameworkViewElement;

abstract class AbstractBlock extends MagentoFrameworkViewElementAbstractBlock {

    /**
     * Retrieve child block HTML
     *
     * @param   string $alias
     * @param   boolean $useCache
     * @return  string
     */
    public function getChildHtml($alias = '',$useCache = true)
    {
        die("here");
    }

}

解决方法

您无法替换层次结构中间的类.
意思是,用另一个抽象类交换现有的父(抽象)类.

也许你可以展示你是如何使用原始类的(我猜在构造函数中)并且这将有助于提供更好的答案.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读