Сообщения без ответов | Активные темы Текущее время: 20 окт 2020, 11:54



Ответить на тему  [ Сообщений: 12 ]  Страница 1, 2  »
"Разбить" цену на разряды 
Автор Сообщение

Зарегистрирован: 09 мар 2014, 18:13
Сообщения: 63

А можно как то разделить число, которое показывает цену товара на разряды.
Имеем к примеру 1250000 руб, а нужно 1 250 000 руб. Просто у меня товар на доске достаточно дорогостоящий :) и считать нули не очень удобно.


20 мар 2014, 23:19
Профиль

Зарегистрирован: 17 янв 2012, 12:07
Сообщения: 512
Откуда: Нижний Новгород

по умолчанию цена так если не ошибаюсь выводится {%$v.value.num%} в шаблоне?! .
в файл smarty/modifirs.php добавьте:
function droblenie($str)
{
return number_format($str, 0, ',', ' ');
}
и уже в шаблоне добавьте к стандартному выводу модификатор:
{%$v.value.num|droblenie%}

_________________
Рекомендую Всем! Надёжный и качественный хостинг BeGet.ru
Eboardclub.ru - Шаблоны, доработка, ELITE-BOARD 2.3 - СКРИПТ ДОСКИ ОБЪЯВЛЕНИЙ
Доска объявлений Республика Крым


21 мар 2014, 00:01
Профиль WWW

Зарегистрирован: 09 мар 2014, 18:13
Сообщения: 63

SERblY писал(а):
по умолчанию цена так если не ошибаюсь выводится {%$v.value.num%} в шаблоне?! .
в файл smarty/modifirs.php добавьте:
function droblenie($str)
{
return number_format($str, 0, ',', ' ');
}
и уже в шаблоне добавьте к стандартному выводу модификатор:
{%$v.value.num|droblenie%}


Что то не получается. Ошибка
Fatal error: Cannot redeclare droblenie() (previously declared in /home/.../smarty/modifirs.php:6) in /home......

А если оставит вывод {%$v.value.num|droblenie%} без прописывания функции, то все дробится нормално, но уже с копейками, которые хотелось бы убрать.


21 мар 2014, 18:50
Профиль

Зарегистрирован: 17 янв 2012, 12:07
Сообщения: 512
Откуда: Нижний Новгород

ну значит это уже по дефолту добавили в скрипт, раньше небыло! копейки убрать это и есть
короче то что я написал не добавляйте а найдите в этом файле в самом верху там будет
function droblenie($str)
{
return number_format($str, 2, ',', ' ');
}
за место двойки 0 поставьте попробуйте, щас нет у меня возможности проверить, по моему так должно заработать!

_________________
Рекомендую Всем! Надёжный и качественный хостинг BeGet.ru
Eboardclub.ru - Шаблоны, доработка, ELITE-BOARD 2.3 - СКРИПТ ДОСКИ ОБЪЯВЛЕНИЙ
Доска объявлений Республика Крым


21 мар 2014, 22:09
Профиль WWW

Зарегистрирован: 09 мар 2014, 18:13
Сообщения: 63

Да, теперь все отлично. Большое спасибо!!!


21 мар 2014, 22:35
Профиль
Аватара пользователя

Зарегистрирован: 09 янв 2015, 23:07
Сообщения: 84
Аватара пользователя

Автору спасибо!!!


13 янв 2015, 23:37
Профиль
Аватара пользователя

Зарегистрирован: 09 янв 2015, 23:07
Сообщения: 84
Аватара пользователя

Всё получилось ! Только на главной всё по старому (( Подскажите пожалуйста как разбить цену так же, только на главной в шаблонах geo и expresso?


14 янв 2015, 00:06
Профиль
Аватара пользователя

Зарегистрирован: 09 янв 2015, 23:07
Сообщения: 84
Аватара пользователя

Кстати, гогда переключаешь валюту, все заново в формате 123456(((


15 янв 2015, 18:42
Профиль
Аватара пользователя

Зарегистрирован: 27 апр 2012, 12:48
Сообщения: 132
Аватара пользователя

Вообще плохая практика, править "Системные файлы" :)

Чтоб разбить цену на разделы, и при этом не лазить в файлы движка, делаем так:

В файле шаблона где выводим цену (например list.html) добавьте следующее.

Код:
{%assign var='price' value=$message.fields.p.0.value.num|number_format:0:" ":" "%}


ну и в месте где хотите вывести цену используйте

Код:
{%$price%}


Полный код: (для версии 2.3)

Код:
{%if $message.fields.p.0%}
{%assign var='price' value=$message.fields.p.0.value.num|number_format:0:" ":" "%}
        {%if $rates_default.charcode == 'rur'%}         
           {%$price%} <i class="fa fa-rub" aria-hidden="true"></i>
        {%elseif $rates_default.charcode == 'usd'%}
           {%$price%} <i class="fa fa-usd" aria-hidden="true"></i>
        {%elseif $rates_default.charcode == 'eur'%}
           {%$price%} <i class="fa fa-eur" aria-hidden="true"></i>
        {%else%}
           {%$message.fields.p.0.value.txt%}
        {%/if%}
{%/if%}


Формат цены будет такой: 10 000 000

По аналогии можно сделать и для более ранних версий EB.

_________________
Донаты Яндекс PayPal


16 окт 2017, 15:20
Профиль

Зарегистрирован: 11 янв 2018, 02:29
Сообщения: 4

Спасибо, за совет)


Последний раз редактировалось Юрий 05 фев 2018, 03:07, всего редактировалось 1 раз.



05 фев 2018, 00:43
Профиль
Показать сообщения за:  Поле сортировки  
Ответить на тему   [ Сообщений: 12 ] 

Кто сейчас на конференции

Сейчас этот форум просматривают: Александр Смутко и гости: 9


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти: