Красивый ценник

Правила раздела: faq.php?mode=okay
Модератор: Модераторы

Dentar
Dentar
Репутация: 0
Сообщения: 25
Зарегистрирован: 05.12.2016
С нами: 7 лет 3 месяца

Сообщение #1 Dentar » 09.06.2017, 23:57

Всем привет. Есть вопрос по дизайну ценника.
Подскажите можно ли как-то сделать что-бы размер шрифта после запятой был меньше.
Например:
ценник.png
ценник.png (984 байт) 1721 просмотр

Заранее спасибо

korshunov
korshunov
Репутация: 146
Сообщения: 1854
Зарегистрирован: 03.12.2015
С нами: 8 лет 3 месяца
Skype

Сообщение #2 korshunov » 10.06.2017, 06:44

Можно, но совсем просто вряд ли выйдет. Если просто добавить HTML-теги в результат функции convert, то тогда отваливается работа с вариантом в карточке товара (по крайней мере, в стандартном шаблоне). Скорее всего, надо почти все менять в отображении цен...

Vitaly
Аватара
Vitaly
Репутация: 20
Сообщения: 109
Зарегистрирован: 15.08.2016
С нами: 7 лет 7 месяцев

Сообщение #3 Vitaly » 19.06.2017, 16:07

Как вариант простой реализации, можно добавлять теги с помощью JS, после того как отработает php.
Пример для карточки товара:

Код: Выделить всё

<script>
function prettyPrice(){
    var arr = $('.fn-price').text().split(',');
    $('.fn-price').html('<span style="font-size:2rem">'+arr[0] + ',</span>' + arr[1]);
}
$(document).ready(prettyPrice);
$('.fn-variants').on('click', prettyPrice);
</script>

Но, тут есть не абы какой недостаток - шрифт меняется после загрузки странички. Но если очень хочется и сайт работает резво...))
Сразу скажу, что приведенная выше конструкция является простеньким примером а не готовым решением. Ибо отсутствуют проверки на разделитель.
В таком виде, без ошибок сработает только если в настройках стоит разделитель - запятая, как на рисунке у ТС. Проверил на дефолтном шаблоне v1.2.2

korshunov
korshunov
Репутация: 146
Сообщения: 1854
Зарегистрирован: 03.12.2015
С нами: 8 лет 3 месяца
Skype

Сообщение #4 korshunov » 20.06.2017, 07:07

Пробовал на 2.0.2 на стандартном шаблоне (пришлось заменить $('.fn-price') на $('.fn_price')).
Метод простой и хороший, но недостатков у него намного больше.

В карточке товара:
1. Для старой цены вид не меняется.
2. Если у товара есть рекомендуемые, то у них цены ПОРТЯТСЯ.
3. В информере корзины вид цены обычный. Если просто добавить аналогичную обработку для информера, то работает. Но при укладке в корзину опять становится цена некрасивая.

Для других страниц
4. Автором сказано "для карточки товара". Для каждого типа страницы отдельно писать - слишком сложно.
5. На других страницах наверняка будут еще свои проблемы. Например, если установить подобным приемом красивые цены в списке товаров, то при применении фильтра "красота" слетает.

По моему, предложенный способ не годится совсем - из-за весьма критичного недостатка п.2...

Vitaly
Аватара
Vitaly
Репутация: 20
Сообщения: 109
Зарегистрирован: 15.08.2016
С нами: 7 лет 7 месяцев

Сообщение #5 Vitaly » 20.06.2017, 11:28

Пункты 1,3,4,5 игнорирую, т.к. делал только для ценника в карточке товара, его чаще всего хотят стилизировать. Хотя и для других вполне осуществимо.
Пункт 2 - очень полезное замечание, я не проверял с рекомендуемыми. Чтобы этой проблемы избежать, нужно чуточку подправить код:

Код: Выделить всё

<script>
function prettyPrice(){
    var arr = $('.fn-variants .fn-price').text().split(',');
    $('.fn-variants .fn-price').html('<span style="font-size:2rem">'+arr[0] + ',</span>' + arr[1]);
}
$(document).ready(prettyPrice);
$('.fn-variant').on('click', prettyPrice);
</script>

korshunov
korshunov
Репутация: 146
Сообщения: 1854
Зарегистрирован: 03.12.2015
С нами: 8 лет 3 месяца
Skype

Сообщение #6 korshunov » 20.06.2017, 12:38

Если Вас устраивает, то и хорошо.
А вообще очень специфично - стилизовать цену только на странице товара и только в одном месте.

Vitaly
Аватара
Vitaly
Репутация: 20
Сообщения: 109
Зарегистрирован: 15.08.2016
С нами: 7 лет 7 месяцев

Сообщение #7 Vitaly » 20.06.2017, 15:30

Дело не в том, устраивает ли это меня. Устраивает ли это ТС...
Конкретно где нужно менять, в вопросе не описано.
Соответственно, с моей стороны была идея и её реализация на примере ценника в карточке товара, на дефолтном шаблоне v1.2.2, что я там-же и написал. Это не готовое решение для всех.
По этому принципу можно и в других местах оформить. Сложно это или нет, дело индивидуальное, я считаю, что относительно не сложно.
Расписывать все возможные варианты не вижу смысла, скрипт в любом случае будет отличаться, шаблоны и версии CMS у всех разные. Да и самого ТС возможно этот вопрос уже не интересует.
А лепить куда попало этот скрипт и говорить, что оно и там и там не работает... Ну как-то не серьёзно. Я этого и не скрываю, а прямо говорю - на других страницах оно работать не будет, не тратьте время. Скрипт нужно модифицировать под свои нужды, для других страниц.


Название раздела: Полезные решения для OkayCMS
Правила раздела: faq.php?mode=okay

Быстрый ответ


Введите код в точности так, как вы его видите. Регистр символов не имеет значения.
Код подтверждения

   

Вернуться в «Полезные решения для OkayCMS»

Кто сейчас на форуме (по активности за 5 минут)

Сейчас этот раздел просматривают: 17 гостей