Magento - 查找特定的核心文件

问题描述 投票:0回答:2

我熟悉 Magento 后台的主题设置和使用模板提示来查找 .phtml 文件。

我不太熟悉的是app/code/core/Mage/Catalog/Model等核心文件

我需要做的是将核心文件复制到“我的主题”,就像覆盖核心 phtml 文件一样。

我基本上想修改 Magento 结账流程的订单摘要页面上出现的一些标签 - domain.com/checkout/cart/

我使用模板提示跟踪 phtml 文件。在 app/design/frontend/default/mytheme/template/checkout/cart 中我找到了代码

渲染总计(); ?>

现在我偶然发现了两个我想要更改的文件:

/httpdocs/app/code/local/Mage/Sales/Model/Quote/Address/Total/Grand.php /httpdocs/app/code/local/Mage/Sales/Model/Quote/Address/Total/Shipping.php

我制作了这些文件的本地副本(http://www.magentocommerce.com/wiki/how_to/how_to_create_a_local_copy_of_app_code_core_mage)来覆盖默认标签,就像我覆盖模板文件一样。

我的问题是,如何找到与您想要更改的“内容”相关的核心文件,这些文件位于函数调用中,例如 renderTotals(); ?> 在 phtml 文件中?

无法像我一样通过模板提示来精确定位内容,这让我放慢了速度,而且我正在努力寻找解决方案,因为我还不了解 Magento 的所有词汇。

希望这是有道理的,并提前致谢!

php templates magento module
2个回答
1
投票

在打开模板路径提示的同一设置页面中,还要打开“将块名称添加到提示”设置。这将显示 PHP 类名,例如:

Mage_Sales_Model_Quote_Address_Total_Grand
,您可以从中推断出文件夹路径(下划线代表子文件夹,最后一段代表文件名)。

如果您收到诸如

Mage_Sales_Model_Quote_Address_Total_Default
之类的块,那么有时只需要一点常识就可以看出它正在从同一文件夹中提取其他文件(例如
Grand.php
Shipping.php
)。但同一个文件夹中通常只有几个文件,因此很容易看到。

正如 Sid Vel 所说,良好的搜索项目功能很有帮助。但是,如果您发现自己正在查看某个类的 Abstract.php,通常您需要查看该目录中具有正确名称的子文件夹以找到具体的实现。但它仍然可以让你非常接近你需要去的地方。


0
投票

我总是使用 Dreamweaver 的站点/目录搜索功能。它将扫描 Core 文件夹中的所有文件并告诉您该函数来自哪里。就你而言,我会搜索“renderTotals”。您需要在 Dreamweaver 中启用 PHTML 编辑。

大多数 IDE 都允许这种搜索选项。在 Aptana 中,您可以按住 Ctrl 键并单击该函数来打开其来源的文件。由于规模庞大,Magento 需要很长时间才能在 Aptana 上对其进行索引。

© www.soinside.com 2019 - 2024. All rights reserved.