0

我正在开发 Magento 1.7.0.2 和

app\design\frontend\default\default\template\catalog\product\price.phtml 

第 201 行(ish)是

 <?php echo $_coreHelper->currency($_price, true, true) ?>

生成代码:

<span class="price">£100.00</span>

因为货币符号在跨度中,所以它在微格式中出现错误。因此,我希望价格看起来相同,但将货币符号从跨度中取出,使其看起来像:

£<span class="price">100.00</span>

我该怎么做?$_coreHelper->currency($_price, true, true) 在做什么?

4

2 回答 2

1

$_coreHelper->currency($_price, true, true) 在做什么?

/**
 * Convert and format price value for current application store
 *
 * @param   float $value
 * @param   bool $format
 * @param   bool $includeContainer
 * @return  mixed
 */
public static function currency($value, $format = true, $includeContainer = true)

即添加货币符号并将其包含在其中,<span class="price"><span>因此如果您使用 $_coreHelper->currency($_price, true, false) 您将获得相同的价格而无需<span class="price">

如果您需要使用£<span class="price">100.00</span>

 <?php echo Mage::app()->getLocale()->currency(Mage::app()->getStore()->getCurrentCurrencyCode())->getSymbol(); ?>
<span class="price"><?php echo $price ?></span>

<?php echo $_price ?>- 不是您的代码的最终版本,您需要对其进行格式化但没有货币符号,您可以在 Magento SE 主题上阅读它 - 如何在没有货币符号的情况下获取价格

喜欢

Mage::getModel('directory/currency')->format(
    $product->getFinalPrice(), 
    array('display'=>Zend_Currency::NO_SYMBOL), 
    false
);
于 2013-10-30T17:19:40.993 回答
1

您可以使用 :before,:after 将货币字符添加为动态内容,并通过 content="" 插入它的字符;像这样:


.price{position:relative; text-align:center; outline:1px solid #000; width:200px; height:60px}
.price:before,.price::before{content:'£'; position:absolute; z-index:12; font-size:50px; left:0; top:0; width:200px; height:60px; text-align:left}
.price:after,.price::after{}  

我做了一个快速的小提琴展示它在行动http://jsfiddle.net/jalbertbowdenii/7MDH5/2/

于 2013-11-01T13:05:56.937 回答