Вывод цены с двумя знаками после запятой — различия между версиями
Материал из Umicms
| Stexe (обсуждение | вклад) | Stexe (обсуждение | вклад)  | ||
| (не показаны 2 промежуточные версии этого же участника) | |||
| Строка 1: | Строка 1: | ||
| − | [[Категория:Верстка в TPL | + | [[Категория:Верстка в TPL]][[Категория: Модуль Интернет магазин]] | 
| '''Актуально для версии 2.9.6'''<br/><br/> | '''Актуально для версии 2.9.6'''<br/><br/> | ||
| '''Задача:''' Выводить цену на страницах сайта с двумя знаками после запятой <br/><br/> | '''Задача:''' Выводить цену на страницах сайта с двумя знаками после запятой <br/><br/> | ||
| '''Реализация:'''<br/> | '''Реализация:'''<br/> | ||
| − | В файл '''''~/classes/modules/custom.php'''''добавим определение макроса format_price, который будет возвращать цену с двумя знаками после запятой: | + | В файл '''''~/classes/modules/custom.php''''' добавим определение макроса format_price, который будет возвращать цену с двумя знаками после запятой: | 
| <source lang="php"> | <source lang="php"> | ||
| public function format_price( $price ) | public function format_price( $price ) | ||
| Строка 12: | Строка 12: | ||
| </source> | </source> | ||
| + | Макрос format_price() принимает единственный параметр $price - цену (число), которую нужно преобразовать. | ||
| + | <h2>TPL-шаблонизатор</h2> | ||
| + | Пример вызовов макроса: | ||
| + | <source lang="html4strict"> | ||
| + | %custom format_price( '%price%' )% | ||
| + | </source> | ||
| + | <source lang="html4strict"> | ||
| + | %custom format_price( '754.4' )% | ||
| + | </source> | ||
| + | <h2>XSLT-шаблонизатор</h2> | ||
| + | Пример вызовов макроса: | ||
| + | <source lang="xml"> | ||
| + | <xsl:value-of select="document(concat('udata://custom/format_price/', $price))/udata"/> | ||
| + | </source> | ||
| − | + | <source lang="xml"> | |
| − | < | + | <xsl:value-of select="document(concat('udata://custom/format_price/', '754.4'))/udata"/> | 
| − | + | </source> | |
| − | |||
| − | |||
| − | </ | ||
Текущая версия на 08:46, 21 апреля 2014
Актуально для версии 2.9.6
Задача: Выводить цену на страницах сайта с двумя знаками после запятой 
Реализация:
В файл ~/classes/modules/custom.php добавим определение макроса format_price, который будет возвращать цену с двумя знаками после запятой:
public function format_price( $price )
{
     return number_format( $price, 2 );
}
Макрос format_price() принимает единственный параметр $price - цену (число), которую нужно преобразовать.
TPL-шаблонизатор
Пример вызовов макроса:
%custom format_price( '%price%' )%
%custom format_price( '754.4' )%
XSLT-шаблонизатор
Пример вызовов макроса:
<xsl:value-of select="document(concat('udata://custom/format_price/', $price))/udata"/>
<xsl:value-of select="document(concat('udata://custom/format_price/', '754.4'))/udata"/>
