Magento的$ _weeeHelper-> typeOfDisplay()方法

Ala*_*orm 3 php magento

我正在调查Magento臭名昭着的价格块/ price.phtml文件,我遇到了一些看似错误和/或废弃的代码路径的东西,但我想首先让社区运行它,以确保我理解正在发生的事情.

在整个文件中,Magento将在条件调用中使用以下方法

$_weeeHelper->typeOfDisplay($_product, 0)
$_weeeHelper->typeOfDisplay($_product, 1)
$_weeeHelper->typeOfDisplay($_product, 4)
$_weeeHelper->typeOfDisplay($_product, 2)
Run Code Online (Sandbox Code Playgroud)

根据我的代码跟踪收集的内容,此方法(如所调用的)最终将第二个参数与两个配置值中的一个进行比较.或

Tax -> Fixed Product Taxes -> Display Prices On Product View Page
Tax -> Fixed Product Taxes -> Display Prices In Product Lists
Run Code Online (Sandbox Code Playgroud)

取决于当前的背景.如果我们在产品页面上,那就是第一个.否则,它采用产品列表页面.(和"在产品页面上"表示设置了一个值Mage::registry('current_product')).

除了下面的电话,这一切都很好

$_weeeHelper->typeOfDisplay($_product, 4)
Run Code Online (Sandbox Code Playgroud)

这些配置字段的唯一可能值是0 - 3.没有"4".

那么,第一个问题:以上是否准确描述了该typeOfDisplay方法的行为?(假设null$zone参数)

第二个问题:如果是这样的话,Magento的版本是否存在(或者存在)版本中存储了值为"4"的版本

Tax -> Fixed Product Taxes -> Display Prices In Product Lists
Tax -> Fixed Product Taxes -> Display Prices On Product View Page
Run Code Online (Sandbox Code Playgroud)

领域?

kal*_*dan 5

好吧,也许这是部分答案......

在CE 1.3.3.0中,似乎有一个值4.

class Mage_Weee_Model_Config_Source_Display
{

    public function toOptionArray()
    {
        return array(
            array('value'=>0, 'label'=>Mage::helper('weee')->__('Including FPT only')),
            array('value'=>1, 'label'=>Mage::helper('weee')->__('Including FPT and FPT description [excl. FPT VAT]')),
            array('value'=>4, 'label'=>Mage::helper('weee')->__('Including FPT and FPT description [incl. FPT VAT]')),
            array('value'=>2, 'label'=>Mage::helper('weee')->__('Excluding FPT, FPT description, final price')),
            array('value'=>3, 'label'=>Mage::helper('weee')->__('Excluding FPT')),
        );
    }

}
Run Code Online (Sandbox Code Playgroud)