Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

[Поддержка] Замена символа рубля OCMOD


savage4pro

Recommended Posts

Замена символа рубля OCMOD


Замена символа рубля OCMOD


Мод заменяет знак валюты рубля на симпатичный почти уже стандартный символ (U+20BD), представленный в наборе глифов шрифта "Roboto" от Christian Robertson.

Подходит для любого шаблона OpenCart версий 2.0.x, 2.1.x, 2.2.x, 2.3.x при отсутствии прямых модификаций ядра.

Схема работы:

добавляет в БД новую таблицу `oc_currency_modsymbols` с одной записью - для валюты с кодом RUB

на этапе выборки данных о валютах оборачивает оригинальный символ в конструкцию для обработки подключаемыми при загрузке страницы стилями

не ломает возможность менять оригинальный символ в админке, который будет показан при выводе шаблонов, в которых нет возможности подключать дополнительные стили (например, почтовые уведомления), пробелы до/после оригинального символа выносятся за пределы конструкции, т.е. сохраняются

после установки можно вручную добавлять записи в таблицу `oc_currency_modsymbols` для форматирования символов валют по желанию (для включения в конечную строку стандартного значения, т.е. для автозамены, вместо него следует указать "_default_symbol_")

мод можно безболезненно отключать/удалять, функциональность при этом вернется к стандартной

Установка:

  1. Бекап!
  2. загрузить roboto-rouble-symbol-2.5.ocmod.zip через Extensions / Extension Installer
  3. обновить кэш модификаций на странице Extensions / Modifications
  4. обновить системный кэш

Удаление:

  1. Бекап!
  2. удалить мод на странице Extensions / Modifications, там же обновить кэш модификаций
  3. обновить системный кэш
  4. вручную удалить из БД таблицу `oc_currency_modsymbols`
  5. вручную удалить файлы catalog/view/theme/default/stylesheet/roboto-forced.css и roboto-forced.min.css
  6. вручную удалить файлы catalog/view/theme/default/stylesheet/font/google/roboto-subset-latin-ext-*.*
  7. При обновлении с предыдущих версий рекомендется полное их удаление, но можно удалить сам модификатор и очистить системный кэш и кэш модификаций, данные БД перезапишутся на новые при повторной установке.

В случае некорректного отображения блока с форматированной ценой (например, вылезающие закрывающие теги вида: руб." />") необходимо в шаблоне, где эта цена выводится, оборачивать её вывод в strip_tags();

С 2016-11-28 (v.2.5.1) в комплекте идет сабсет (latin-ext, webfont) шрифта Roboto для совместимости с браузерами, которые блокируют подгрузку внешних шрифтов (да, это про тебя, IE9, гори в аду!)


  • Добавил
  • Добавлено
    06.11.2015
  • Категория
  • Системные требования
  • Метод активации
  • Ioncube Loader
  • ocStore
  • OpenCart.Pro, ocShop
  • Обращение к серверу разработчика

 

  • +1 1
Надіслати
Поділитися на інших сайтах

  • 1 month later...
  • 4 weeks later...
  • 1 month later...

Выдает ошибки:

Illegal string offset 'decimal_point' in /var/www/petriknet/data/www/rumanchester.ru/system/modification/catalog/view/theme/default/template/product/product.tpl on line 710;711;712;713;715

function price_format(n)
{ 
    c = <?php echo (empty($currency['decimals']) ? "0" : $currency['decimals'] ); ?>;
    d = "<?php echo $currency['decimal_point']; ?>"; // decimal separator
    t = "<?php echo $currency['thousand_point']; ?>"; // thousands separator
    s_left = "<?php echo $currency['symbol_left']; ?>";
    s_right = "<?php echo $currency['symbol_right']; ?>";
      
    n = n * <?php echo $currency['value']; ?>;

Надіслати
Поділитися на інших сайтах


по дефолту, decimal_point и thousand_point являются индексами массивов в языковых файлах

каким образом ваш шаблон товара получает переменную $currency, могу только предположить, что другим модификатором

вероятно, он добавляет в таблицу oc_currency новые поля, может быть в этом проблема

Надіслати
Поділитися на інших сайтах

обновил модуль, качайте

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

Надіслати
Поділитися на інших сайтах

обновил модуль, качайте

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

Обновил. Безрезультатно. Те же ошибки.

Надіслати
Поділитися на інших сайтах


на всякий случай спрошу - кэш модификаторов почистили?

 

а без данного модуля ошибок нет, я так понимаю?

Надіслати
Поділитися на інших сайтах

на всякий случай спрошу - кэш модификаторов почистили?

 

а без данного модуля ошибок нет, я так понимаю?

Кэш чистил, без него ошибок нет.

Надіслати
Поділитися на інших сайтах


на всякий случай спрошу - кэш модификаторов почистили?

 

а без данного модуля ошибок нет, я так понимаю?

Большой РЕСПЕКТ, за быструю реакцию касаемо тех. поддержки. Косяк оказался не в данном модуле, а в другом и все равно ПОМОГ и все настроил!

Надіслати
Поділитися на інших сайтах


  • 2 months later...

oc 2.1.0.1

1. загрузил через установку архив roboto-ruble-symbol.ocmod.zip зеленая полоска показала что все ок

2. зашел в менеджер дополнений нажал обновить кэш и все пропало

 

Выскочил белый экран с надписью

Use of undefined constant DIR_DATABASE - assumed 'DIR_DATABASE' in /var/www/***/data/www/***/system/library/db.php on line 14 Error: Could not load database file mysqli! 

3. стал проверять в чем дело: а) таблица в базе создана б) изменения в файлы согласно install.xml не были записаны 

4. удалил все что было записано модулем: а) таблицу б) файл из папки stylesheet

5. проверил скрипты в которые должны были внестись изменения - они не изменны остались

6. удалил все из папки cache

 

толку ноль. не понятно где еще мог модуль наследить подскажите пожалуйста

спасибо. 

Надіслати
Поділитися на інших сайтах


oc 2.1.0.1

1. загрузил через установку архив roboto-ruble-symbol.ocmod.zip зеленая полоска показала что все ок

2. зашел в менеджер дополнений нажал обновить кэш и все пропало

 

Выскочил белый экран с надписью

Use of undefined constant DIR_DATABASE - assumed 'DIR_DATABASE' in /var/www/***/data/www/***/system/library/db.php on line 14 Error: Could not load database file mysqli! 

3. стал проверять в чем дело: а) таблица в базе создана б) изменения в файлы согласно install.xml не были записаны 

4. удалил все что было записано модулем: а) таблицу б) файл из папки stylesheet

5. проверил скрипты в которые должны были внестись изменения - они не изменны остались

6. удалил все из папки cache

 

толку ноль. не понятно где еще мог модуль наследить подскажите пожалуйста

спасибо. 

 

какие модуль оставляет следы:

css

таблица в базе

 

у вас точно 2.1.x?

константа DIR_DATABASE во второй ветке движка не используется вовсе, насколько мне известно

смотрите, какие еще модули ставили и для какой версии

  • +1 1
Надіслати
Поділитися на інших сайтах

какие модуль оставляет следы:

css

таблица в базе

 

у вас точно 2.1.x?

константа DIR_DATABASE во второй ветке движка не используется вовсе, насколько мне известно

смотрите, какие еще модули ставили и для какой версии

да точно Версия ocStore 2.1.0.1 все 

все было рабочее перед устанвкой посмотрел на пост  3

Bladislav

посмотрел что критичного ничего в файла нет, не делая бэкапа поставил. 

уже все облазил весь кэш удалил и все равно эта ошибка. 

Надіслати
Поділитися на інших сайтах


какие модуль оставляет следы:

css

таблица в базе

 

у вас точно 2.1.x?

константа DIR_DATABASE во второй ветке движка не используется вовсе, насколько мне известно

смотрите, какие еще модули ставили и для какой версии

спасибо за указание пути по сути. 

проблему решил. но так и не понял как.  

 

1. вчера был заменен файл db.php модулем для профилирования (в нем как раз  и была эта константа)

2. до действия в п1. файл db.php (правильный) был где то закеширован(так и не нашел где именно) 

3. с компа так и не зашел в админку - не работал сайт, попробовал с телефона - с него зашел. там то и обновил кэш модификаторов и удали кэш через программу которая все кеширует и о чудо все заработало. 

4. поставил модуль замены рубля - встал четко и красиво. 

Надіслати
Поділитися на інших сайтах


У нас знак рубля в двух модулях с ошибкой выводится. Посмотрите.

Сам код:

<input type="hidden" name="min_product_price" value="<?php if (!$special) { ?><?php echo $price; ?><?php } else { ?><?php echo $special; ?><?php } ?>"/>

Может его как то поправить.

 

 

post-683118-0-20476600-1464461528_thumb.jpg

Надіслати
Поділитися на інших сайтах


У нас знак рубля в двух модулях с ошибкой выводится. Посмотрите.

Сам код:

<input type="hidden" name="min_product_price" value="<?php if (!$special) { ?><?php echo $price; ?><?php } else { ?><?php echo $special; ?><?php } ?>"/>

Может его как то поправить.

 

это пробовали?

 

 

В случае некорректного отображения блока с форматированной ценой (например, вылезающие закрывающие теги вида: руб." />") необходимо в шаблоне, где эта цена выводится, оборачивать её вывод в strip_tags();
Надіслати
Поділитися на інших сайтах

А как обернуть, подскажите. <input type="hidden" name="min_product_price" value="<?php if (!$special) { ?><?php echo $price; ?><?php } else { ?><?php echo $special; ?><?php } ?>"/>

 

как-то так

<input type="hidden" name="min_product_price" value="<?php if (!$special) { ?><?php echo strip_tags($price); ?><?php } else { ?><?php echo strip_tags($special); ?><?php } ?>"/>
Надіслати
Поділитися на інших сайтах

 

как-то так

<input type="hidden" name="min_product_price" value="<?php if (!$special) { ?><?php echo strip_tags($price); ?><?php } else { ?><?php echo strip_tags($special); ?><?php } ?>"/>

Большое спасибо за помощь. Помогло, теперь все выглядит замечательно.

Надіслати
Поділитися на інших сайтах


  • 5 months later...

в новую версию включена часть шрифта Roboto для локального использования вместо его подгрузки с fonts.google

Надіслати
Поділитися на інших сайтах

  • 4 months later...

Спасибо за модуль. Плюсанул.

В 28.11.2016 в 20:16, savage4pro сказал:

в новую версию включена часть шрифта Roboto для локального использования вместо его подгрузки с fonts.google

А в этом есть необходимость? При уже скаченных с гуглфронта, у посетителей не возникнет лишней загрузки? Там столько шрифтов в архиве.. ))

Надіслати
Поділитися на інших сайтах


7 часов назад, baxabit сказал:

у посетителей не возникнет лишней загрузки

 

В 15.11.2015 в 21:31, savage4pro сказал:

С 2016-11-28 (v.2.5.1) в комплекте идет сабсет (latin-ext, webfont) шрифта Roboto для совместимости с браузерами, которые блокируют подгрузку внешних шрифтов (да, это про тебя, IE9, гори в аду!)

подгружаются только те шрифты, которые нужны тому или иному браузеру

 

Скрытый текст

cross-browser-support.png

 

7 часов назад, baxabit сказал:

А в этом есть необходимость?

локальное их хранение предотвращает ругань про безопасность

 

по поводу объема и скорости загрузки

http://take.ms/7POu6

первые 3 - локально, последние 2 - гуглошрифт

  • +1 1
Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.