如何覆盖 app/code/core/Mage/Core/functions.php 中的 Magento 函数

2024-04-26

我需要重写此文件中的一个函数:

应用程序/代码/核心/Mage/Core/functions.php

问题是,它是如此核心,以至于没有与之关联的类,可能是因为 Core 甚至不是一个模块。有谁知道如何在没有类的情况下覆盖文件中的函数?

任何帮助,将不胜感激。


将文件复制到应用程序/代码/local由于以下原因,不应使用 /Mage/Core/functions.php:

  1. 整个文件必须被复制,这使得我们更难识别所做的更改。

  2. 未来的升级可能会引入新功能,除非记得复制该文件的新版本并再次实施更改,否则这些新功能将不可用。

  3. 未来的升级可能会解决我们会错过的核心错误,除非记得复制该文件的新版本并再次实施更改。

  4. 关于第 2 点和第 3 点,每次升级都可能改变事物的工作方式,这意味着重新审视我们需要做出哪些改变。在某些情况下,重写方法也是如此,但至少我们可以轻松识别这些更改对我们的影响。

  5. 如果其他人想要使用相同的技术,你会怎么做?能够识别什么是核心代码以及什么是我们的变得越来越复杂。

  6. 将我们的代码作为一个“模块”保存在一起变得更加困难,因为通过复制核心文件意味着我们已经有效地将其锁定为“保证”在我们复制原始代码的软件版本上运行。这也意味着重用这项工作要困难得多。

  7. 确定代码更改的原因要困难得多,因为它超出了我们的命名空间,即与“Example_Module”相关的所有开发都在命​​名空间中:

/应用程序/代码/核心/本地/示例/模块

而复制到 app/code/core/local/Mage 的代码仅表明我们已进行更改以支持未知功能等。

此外,Magento 有时会发布修复错误的补丁 - 这些补丁只会修补核心内的文件,而使您复制的文件没有补丁。

我建议您编写自己的函数来执行您想要的操作,并覆盖该函数以调用您的新函数。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何覆盖 app/code/core/Mage/Core/functions.php 中的 Magento 函数 的相关文章

  • Python中如何从另一个函数调用一个函数内的函数? [复制]

    这个问题在这里已经有答案了 我已经在 python 中的另一个函数中定义了一个函数 现在我想调用内部函数 在Python中这可能吗 我怎么打电话func2 from func3 def func1 def func2 print Hello
  • jQuery 中使用 bind() 和each() 分配事件处理程序的区别?

    有人可以告诉我使用bind 分配事件处理程序有什么区别吗 function someElement bind mouseover function e this css change color bind mouseout function
  • jquery - 不是函数错误

    这是我的代码 function fn pluginbutton function options myoptions extend left true return this each function var focus false if
  • 在 Magento 中获取过去 24 小时内的订单商品

    我正在尝试获取过去 24 小时内的所有订单商品 我已锁定查询 因此它返回了我需要的内容 order id 和created on 值 order items Mage getResourceModel sales order item co
  • Excel VBA 模块在运行时未更新

    我有 2 个模块 主模块在运行时更新另一个模块 并在每次更新时运行该模块 问题是另一个模块在运行时似乎没有更新 它运行第一个模块 因为输出全部根据第一个输入 但运行完成后 我检查了其他模块 它已更新 但输出不符合更新的模块 我已经问过这个问
  • 如何检查 Python 中的函数是否没有发送参数

    因此 在一个函数中 我想测试函数期望的参数是否存在 如果有参数 则执行此操作 如果没有从调用程序发送参数且函数中未接收到任何参数 则执行此操作 def do something calculate if calculate somethin
  • 使用 javascript 更改 onClick 属性

    这是我的函数 它应该更改 HTML 输入的 onClick 属性 但是如果我使用 document getElementById buttonLED id onclick writeLED 1 1 它根本不起作用 但如果我使用 docume
  • Magento Rest API - oAuth 错误

    我是第一次使用 Magento Rest API 我浏览了 Rest API 的教程http www magentocommerce com api rest并尝试了一个通过 API 获取产品的示例 callbackUrl http loc
  • Python:从源代码安装模块

    当然你们都知道答案 而且很容易 但我是 python 新手 我在网上找到了一段代码 读取雅虎财经的股价 usr bin env python Copyright c 2007 2008 Corey Goldberg email protec
  • Magento,翻译验证错误消息

    我已经成功创建了原型验证的新规则 现在我需要翻译错误消息 位置 Javascript 中的字符串 但是 我只能翻译所有消息 我的新自定义消息似乎无法翻译 我该如何改变这个 也许你需要一个jstranslator xml里面的文件etc fo
  • JavaScript 调用函数

    我最近一直在测试一些代码 试图更好地理解 javascript 然后我遇到了call 我无法很好地理解的功能 我有以下代码 function hi console log hi var bye function param param2 c
  • 在lua中组合两个函数

    我刚开始学习lua 所以我的要求可能是不可能的 现在 我有一个接受函数的方法 function adjust focused window fn local win window focusedwindow local winframe w
  • 使用 numpy 数组时出现内存错误 Python

    我原来的list 函数有超过 200 万行代码 当我运行计算 的代码时出现内存错误 有什么办法可以绕过它吗 这list 下面是实际 numpy 数组的一部分 熊猫数据 import pandas as pd import math impo
  • Intellij 12 - 无法重新导入模块

    所以今天我遇到了一个奇怪的问题 我在 IntelliJ 中的一个模块遇到了一些问题 所以我决定尝试将其清除并从新的结账中重建它 我从 项目 窗口中删除了该模块 然后从我的文件系统中删除 重新下载 我回到 Intellij 并尝试导入该模块
  • VBA:新集合 -> 模块不是有效类型

    我尝试使用集合作为函数的一部分 但是在编译时不断收到错误 模块不是有效类型 即使该函数只是定义一个集合 我也会得到相同的结果 Function CountUniqueTags Dim table As Collection Set tabl
  • JavaScript 中的全局函数

    我是 js 新手 试图了解全局和私有函数 我了解全局变量和局部变量 但是如果我有一个名为test html和 2 个名为test1 js and test2 js 现在我包括test1 js and test2 js in test htm
  • Webpack 5 - 资产模块 - 缺少 url-loader 功能 - postTransformPublicPath

    我想按照建议切换到 webpack 5 asset 模块 不幸的是我错过了 webpack url loader 的函数 postTransformPublicPath path any gt any 由于我们应用程序的结构 资产的公共区域
  • 如何在 R 组内的两个变量的组合上选择具有特定值的行

    这是我之前提出的 R 问题的扩展 如何在R中选择组内具有特定值的行 https stackoverflow com questions 55853841 how to select rows with certain values with
  • PHP 函数可以接受无限数量的参数吗? [复制]

    这个问题在这里已经有答案了 在 PHP 中有类似的函数unset 支持我们向它们抛出的任意数量的参数 我想创建一个类似的函数 它能够接受任意数量的参数并处理所有参数 任何想法 如何做到这一点 在 PHP 中 使用该函数func get ar
  • 如何在 Windows 上的 Python 2.7 上安装 Tensorflow?

    我尝试通过 pip 安装 TensorFlow pip install tensorflow 但是得到这个错误 找不到满足tensorflow要求的版本 来自版本 这个问题有解决办法吗 我还是想通过pip安装 如果您只因为 Keras 而需

随机推荐

  • 如何设置http请求的源IP?

    在发送 http 请求之前 我需要设置源 IP 地址 用于 IP 欺骗等 用于建立http连接的类是HTTPURLConnection 我在 stackoverflow 上找到了下面的链接 这非常有用 注册和使用自定义 java net U
  • 使用 Python 重新打开与 Power BI XMLA 端点的连接时出错

    我有以下 python 代码 它在函数运行时工作正常 但在第二次运行时失败 import adodbapi def connect and print input str print Function starting input str
  • 之间有什么区别?

    有什么区别 b and strong i and em 在 HTML XHTML 中 你应该什么时候使用每一个 他们有对普通网络浏览器渲染引擎具有相同的效果 但是有一个根本区别它们之间 正如作者所写讨论列表帖子 https web arch
  • TeamCity:PhantomJS 在 60000 毫秒内没有捕获,杀死

    我在 CI 环境中运行测试时遇到问题 该配置在使用 Node v6 0 0 npm 3 8 6 的 MacOS 10 11 6 El Capitan 上运行良好 但在使用 Node v4 2 2 npm 2 14 7 运行 Windows
  • 当应用程序繁忙时,如何防止用户在闪亮的应用程序上执行任何操作

    我有一个复杂的闪亮应用程序 有很多输入 传单地图等 我遇到的问题是 当应用程序忙于进行一些计算时 用户不断单击应用程序上的任意位置 有时应用程序会崩溃 我想阻止用户在应用程序繁忙时进行任何点击 重要的是 旋转器保持旋转器状态 而不是像在wa
  • 从 Django 缓存中删除特定项目?

    我正在使用站点范围的缓存内存缓存 http en wikipedia org wiki Memcached作为后端 当底层数据库对象更改时 我想使缓存中的页面无效 如果页面名称发生更改 那么我将使整个缓存无效 因为它会影响每个页面上的导航
  • 更改 iis 7 的 Inet 根文件夹

    我面临着一个非常令人恼火的挑战 我必须在生产服务器中部署 ASP NET MVC 3 应用程序 在这个生产服务器中我有两个驱动器C and D 我有权将我的网站放在D 数据文件夹我不能使用C 不幸的是 IIS 创建了Inet目录在C 显然
  • 如何使用 Android 模拟器查找 GPS 位置?

    你好 朋友们 我正在尝试查找 Android 模拟器的当前 GPS 位置 我已经使用了命令 geo fix 但是如果我尝试检索当前位置 它会显示异常 任何人都可以帮助我吗 从模拟器中您无法获取当前位置 你必须自己定位位置 试试这个 C an
  • 带有子列表的通用记录 TList?

    我想在 Delphi XE5 中使用带有子列表的通用记录 TList type TMyRecord record Value1 Real SubList TList
  • .htaccess 重定向 – 两个重定向之间的差异

    您能解释一下下面两个 htaccess 重定向之间的区别吗 第一个重定向是我最常使用的重定向 但它在最近的网站上不起作用 太多重定向 即使我没有任何设置 但第二个重定向有效 我很好奇 RewriteEngine On RewriteCond
  • 添加到 ArrayList 时出现 Java NullPointerException?

    我的代码抛出 NullPointerException 即使该对象似乎正确存在 public class IrregularPolygon private ArrayList
  • 使用 bash 脚本在 Info.plist 中添加/替换 URL 方案

    我想添加 替换 URL 方案Info plist使用 bash 脚本 命令创建文件 我尝试过sed命令有各种模式但没有成功 我们希望使用 Jenkins 自动生成构建 并且我们的 URL 方案可以针对各种构建进行更改 因此我们想要修改Inf
  • CMYK 2 RGB 问题

    我在将 CMYK 颜色转换为 RGB 时遇到问题 在互联网上有很多公式可以转换它 但例如当我将 CMYK 0 100 100 0 转换为 RGB 时 它得到的值是 255 0 0 但在 Adob e Photoshop 中 RGB 值是 2
  • 将列表组合成元组对 (x, y)

    我正在尝试组合通过传入的数字对sys argv 例子 python myscript py 35 12323 112 76767 36 33345 112 76890 33 68689 111 8980 我的目标是将它们变成元组中的两个集合
  • 使用 PInvoke 从 C# 读取具有“union”类型的 C 结构

    我正在尝试将用 C 构建的结构引入托管端 C 让我们假设这个结构 C 代码 typedef struct S int i union TypeA a TypeB b TypeC c uni S 现在 我创建 C 包装类 StructLayo
  • 查询 Firestore 中的特定日期

    我正在尝试查询 Firestore 中的指定日期 到目前为止我已经尝试过这段代码 let ref db collection schools doc DglhflywuybkOuCq7tGW let start new Date 2018
  • 如何在scala的specs2测试中使用jUnit的TemporaryFolder?

    我正在使用 Playframework 编写测试 我需要创建一个临时文件 RunWith classOf JUnitRunner class DiagnosticSpec extends Specification Rule val tem
  • 双前向/后向管道操作符是否有记录?

    我记得读过有关双管道运算符的内容 gt 和 Example let print a b sprintf O O a b 1 2 gt print val it string 1 2 双 向前 向后 管道运算符记录在以下列表中MSDN 上的
  • 操作内存中具有多个空字符的 C 字符串

    我需要在一块内存中搜索一串字符 但其中几个字符串的每个字符都为空分隔 如下所示 我 a m a s t r i n g 所有 都是空字符 我的问题来自于实际将其记入内存 我尝试过多种方法 例如 char str2 str2 char mal
  • 如何覆盖 app/code/core/Mage/Core/functions.php 中的 Magento 函数

    我需要重写此文件中的一个函数 应用程序 代码 核心 Mage Core functions php 问题是 它是如此核心 以至于没有与之关联的类 可能是因为 Core 甚至不是一个模块 有谁知道如何在没有类的情况下覆盖文件中的函数 任何帮助
Powered by Hwhale