этот хук не предназначен для такого
Ищите theme функцию, если такова имеется, чтобы её переписать. Надо иметь ввиду, что цену может выводить другой модуль и применять свою темизацию
Вроде ее и нет.
Попробуйте определить свой hook_field_formatter_info и hook_field_formatter_view. Код скопируйте из commerce_price, добавьте проверку валюты и код для вывода рублей
У меня это не сработало.
У меня такая задача возникла при создании шаблона товара. Я выводила нужные поля и добавляла необходимую разметку.
Для цены выводила отдельно форматированное число и отдельно символ валюты. И там уже можно добавлять любой html.
Примерно так:
Комментарии
этот хук не предназначен для такого
Ищите theme функцию, если такова имеется, чтобы её переписать. Надо иметь ввиду, что цену может выводить другой модуль и применять свою темизацию
http://drupalcontrib.org/api/drupal/contributions!commerce!commerce.modu...
как видим данная функция отдаёт тупо в t() строке, но нужно проверить, инфо могло устареть.
https://drupal.org/node/1313154
да
поменял пока @ на ! для символов. темезирующую ф-ю не нашел.(
Вроде ее и нет.
Попробуйте определить свой hook_field_formatter_info и hook_field_formatter_view. Код скопируйте из commerce_price, добавьте проверку валюты и код для вывода рублей
http://drupal.stackexchange.com/a/76468
строку
return trim(t('@code_before@code_spacer@negative@symbol_before@price@symbol_spacer@symbol_after@code_spacer@code_after', $replacements));
меняете например на
return trim(t('@code_before@code_spacer@negative@symbol_before@price@symbol_spacer@symbol_after@code_spacer@code_after', $replacements));
и все ))
У меня это не сработало.
У меня такая задача возникла при создании шаблона товара. Я выводила нужные поля и добавляла необходимую разметку.
Для цены выводила отдельно форматированное число и отдельно символ валюты. И там уже можно добавлять любой html.
Примерно так:
$amount = $content['product:commerce_price']['#items'][0]['amount'];
$currency_code = $content['product:commerce_price']['#items'][0]['currency_code'];
$currency = commerce_currency_load($currency_code);
$currency_symbol = $currency['symbol'];
$price = number_format(commerce_currency_round(abs($amount), $currency), $currency['decimals'], $currency['decimal_separator'], $currency['thousands_separator']);
print $price;
print $currency_symbol;
?>