Размер валюты Prestashop

Привет, ребята, я новичок в prestashop. я хочу увеличить размер символа валюты.

Я написал модуль для переопределения Tools.php и tools.js и поместил его в каталог модулей под темами. Структура файла следующая

Mymodule\
-->mymodule.php
-->override
----->classes
-------->Tools.php
----->js
-------->tools.js

я просто скопировал оба файла из соответствующих папок и добавил следующий код

в Tools.php я добавил эту строку кода непосредственно перед if ($no_utf8)

$c_char = '<span>'.$c_char.'</span>';

в tools.js я добавил эту строку кода раньше, если (currencyBlank > 0)

currencySign = '<span>' + currencySign + '</span>';

Спасибо за ваше время

с уважением АБ


person Abhishek Gowda    schedule 03.11.2014    source источник


Ответы (1)


В файле override/classes/Tools.php:

public static function displayPrice(...)
{
   $price = paret::displayPrice(...);
   // use regex to seperate number from currency sign
   return $price.'<small>'.$sign.'</small>';
}

Чтобы переопределить формат Curreny tools.js, вам нужно вставить блок или файл скрипта на каждую страницу, которая имеет:

var fnDefaultFormatCurrency = window.formatCurrency;
window.formatCurrency = function(price, currencyFormat, currencySign, currencyBlank){

    var priceStr = fnDefaultFormatCurrency(price, currencyFormat, currencySign, currencyBlank),

    // use regex here again

    priceFinal = price +' <small>' + sing+ '</small>';

    return priceFinal;
}

На самом деле мне нужно было сделать что-то меньше, поэтому я использовал small, но вы можете использовать что-то еще. Примечание: вам нужно будет заменить .text() на .html() в функции ajax, чтобы правильно отображать HTML

person gskema    schedule 06.11.2014
comment
Здравствуйте, извините за поздний ответ. Где я должен изменить .text() на .html(), можете ли вы быть конкретным. и Спасибо за ответ.. - person Abhishek Gowda; 10.11.2014
comment
Попробуйте сначала вставить два переопределения, замена text() на html() будет проблемой позже. По сути, если вы передадите 20.00 ‹small›$‹/small› в .text(), он отобразит этот текст с видимым HTML (экранированным). - person gskema; 10.11.2014