Это выполняется с помощью JavaScript. Вам нужно изменить метод getOptionLabel в js / varien / configurable.js (это Magento 1.5.1.0, ваш пробег может варьироваться в зависимости от используемой версии).
Этот метод получает опцион и цену разницу , которую необходимо применить. Если вы хотите просто показать абсолютную цену различных опций, вам нужно рассчитать их самостоятельно, используя абсолютную базовую стоимость конфигурируемого продукта и абсолютную разницу опциона.
Первые несколько строк метода выглядят так:
getOptionLabel: function(option, price){
var price = parseFloat(price);
Измените это, чтобы получить абсолютную базовую цену и абсолютную разницу опциона. Затем сложите их вместе, чтобы получить окончательную абсолютную цену опциона. Как это:
getOptionLabel: function(option, price){
var basePrice = parseFloat(this.config.basePrice);
// 'price' as passed is the RELATIVE DIFFERENCE. We won't use it.
// The ABSOLUTE DIFFERENCE is in option.price (and option.oldPrice)
var absoluteDifference = parseFloat(option.price);
var absoluteFinalPrice = basePrice + absoluteDifference;
// var price = parseFloat(price);
var price = absoluteFinalPrice;
Тогда вам нужно избавиться от символов + и - в опциях. Позже в том же методе, когда вы вызываете this.formatPrice, просто меняйте второй параметр на false в каждом вызове.
if(price){
if (this.taxConfig.showBothPrices) {
str+= ' ' + this.formatPrice(excl, false) + ' (' + this.formatPrice(price, false) + ' ' + this.taxConfig.inclTaxTitle + ')';
} else {
str+= ' ' + this.formatPrice(price, false);
}
Еще несколько замечаний по этому поводу:
Вы найдете другой идентичный объект с именем Product.Config, который создается в js / varien / product.js. Насколько я могу судить, это абсолютно ничего не делает, поскольку его заменяют на js / varien / configurable.js.
Кроме того, если вы просто измените js / varien / configurable.js, при следующем обновлении Magento вы, вероятно, потеряете свои изменения. Лучше создать другой файл, например js / varien / my_configurable.js или любой другой, и вызвать его в файле конфигурации (product.xml) для любой используемой темы.