Форум русской поддержки Joomla!® CMS
11.12.2016, 02:26:33 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Локализация плагина скидки JoomShopping Simple discount

 (Прочитано 823 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Good_user
Осваиваюсь на форуме
***

Репутация: +5/-1
Offline Offline

Пол: Мужской
Сообщений: 147


Ukraine, Kyiv


« : 28.07.2015, 13:11:31 »

Здравствуйте, товарищи! Как-то раньше где-то скачал плагин скидок JoomShopping Simple discount, который выводит сообщение в корзине о скидке при покупке товаров на сумму больше заданной в плагине и, соответственно, вычитает сумму скидки из конечной стоимости товаров.

Вот так это выглядит:



А вот админка плагина:



Плагин простенький, но свою задачу выполняет и, главное, работает на Joomla 3.x.

Магазин 2-х язычный (UA / RU) и у меня возникла трудность с его локализацией на украинский язык.

При установке плагин заливает файлы украинской и русской локализации админки.

administrator/language/uk-UA/uk-UA.plg_jshoppingcheckout_simple_discount.ini
administrator/language/ru-RU/ru-RU.plg_jshoppingcheckout_simple_discount.ini

Но файлов локализации фронтенда в папке /language нет. Нужно перевести сообщение о скидке "Всего %s отделяет Вас от скидки -%s", которое прописывается в админке плагина.

Плагин состоит из двух файлов:

simple_discount.php:

Показать текстовый блок

simple_discount.xml:

Показать текстовый блок

Сообщение о скидке содержится в файле simple_discount.xml и при изменении его в админке плагина оно перезаписывается в базе данных.

Код:
<field name="message" type="text" default="Всего %s отделяет Вас от скидки -%s" label="PLG_SIMPLE_DISCOUNT_FIELD_MESSAGE_FOR_DISCOUNT_LABEL" size='60' description='PLG_SIMPLE_DISCOUNT_FIELD_MESSAGE_FOR_DISCOUNT_DESC' />

В языковом файле админки плагина 12 констант:

Показать текстовый блок

Но константы, которая отвечает за перевод самого текста "Сообщения о скидке" не существует.

В общем ума не приложу, как переводить это сообщение. Возникла идея организовать разные поля в админке для 2-х языков, 1 - "Сообщение о скидке (UA)", 2 -
"Сообщение о скидке (RU)". Дополнительное поле в файле simple_discount.xml я то прописал (см. скриншот ниже), но как сделать, чтобы оно прописывалось в базу данных и подключалось в соответствии с выбранным языком в магазине, для меня сложная задача.



Или вариант с дополнительным полем - путь тупиковый? Может возможно перевести более простым путям через константы?

Заранее спасибо всем, кто откликнется! Архив с плагином прикрепил, может кому понадобится.

* plg_ JoomShopping Simple discount.zip (3.36 Кб - загружено 42 раз.)
Записан
Good_user
Осваиваюсь на форуме
***

Репутация: +5/-1
Offline Offline

Пол: Мужской
Сообщений: 147


Ukraine, Kyiv


« Ответ #1 : 29.07.2015, 16:01:12 »

Если вас есть хоть какие-нибудь идеи - подкидывайте, пожалуйста. Возможно это мне поможет решить задачу самому.
Записан
error648398
Осваиваюсь на форуме
***

Репутация: +21/-0
Offline Offline

Сообщений: 180


« Ответ #2 : 31.07.2015, 06:05:15 »

Могу конечно ошибаться (с PHP на - извините а вы кто такой ?)

Но если заменить в simple_discount.php

Заменить строчку
Код:
$this->options['message'] = $this->params->get('message');
на условие:
Код:
if(JFactory::getLanguage()->getTag() == 'ru-RU'){
$this->options['message'] = $this->params->get('message');;
}
elseif(JFactory::getLanguage()->getTag() == 'uk-UA') {
$this->options['message'] = $this->params->get('*****');;
}

Где ***** - name для поля, которое вы указали для украинской надписи.

То при смене языка будет выводить нужную нам надпись.
« Последнее редактирование: 31.07.2015, 06:08:59 от error648398 » Записан
Good_user
Осваиваюсь на форуме
***

Репутация: +5/-1
Offline Offline

Пол: Мужской
Сообщений: 147


Ukraine, Kyiv


« Ответ #3 : 01.08.2015, 21:43:13 »

error648398, спаситель, брат :-) Благодарствую Вам от души! Получилось все :-) Думал, что уже никто не отзовется! Теперь имеем рабочий бесплатный мультиязычный плагин скидки ;-)
Записан
Good_user
Осваиваюсь на форуме
***

Репутация: +5/-1
Offline Offline

Пол: Мужской
Сообщений: 147


Ukraine, Kyiv


« Ответ #4 : 02.08.2015, 00:34:24 »

Для себя перепаковал арихвчик плагина со всеми доработками по мультиязычности. Поделюсь, может кому пригодится  Wink Еще раз благодарю error648398, побольше бы таких добрый и отзывчивых людей на форуме  Smiley

* plg_ JoomShopping Simple discount (multilanguage).zip (8.38 Кб - загружено 50 раз.)
Записан
algen78
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 6


« Ответ #5 : 15.03.2016, 18:47:32 »

А может кто проверить данный плагин на наличие вредоносного кода или уязвимости, а то у меня после установки на сайт вирус залез.
Записан
Good_user
Осваиваюсь на форуме
***

Репутация: +5/-1
Offline Offline

Пол: Мужской
Сообщений: 147


Ukraine, Kyiv


« Ответ #6 : 14.04.2016, 00:33:18 »

А может кто проверить данный плагин на наличие вредоносного кода или уязвимости, а то у меня после установки на сайт вирус залез.
Хм...А как это отобразилось на сайте? Как Вы обнаружили вирус? Пометка в серпе или предупреждение в Я-Г вебмастерах?
Потому как у меня магазин уже около полугода в индексе и яндекс/гугл ничего не говорят. Вшитых ссылок не было.
Записан
dmitry_stas
Профи
********

Репутация: +798/-4
Offline Offline

Сообщений: 7786



« Ответ #7 : 14.04.2016, 00:49:25 »

А может кто проверить данный плагин на наличие вредоносного кода или уязвимости, а то у меня после установки на сайт вирус залез.
с этим плагином не связано. ищите причину в другом месте.
Записан
snaypertoha
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 9


« Ответ #8 : 24.08.2016, 22:12:37 »

А как сделать чтобы скидка не применялась на товары, которые уже имеют скидку (Акционные товары)?
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet