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

[Решено] Добавить в common.js переменную из language


Recommended Posts

Все доброго дня

Opencart version: 3.0.2.0

 

в cart.twig изменил кнопку корзины
 

<button type="button" data-toggle="dropdown" data-loading-text="{{ text_loading }}" id="btn1" class="btn btn-lg"><div class="row"><span id="cart-total">{{ text_items }}</span></div> <div class="row"><img src="image/icons/r3.png" id="cartimg"></div>{{ text_sebet }}</button>

где {{ text_sebet }} добавил значения в языках. В HomePage все правильно показывает. Но при обновлении или добавлении товара не показывает значение {{ text_sebet }}

 

Для этого в catalog/view/javascript/common.js изменил строку где изменяет кнопку корзины
 

$('#cart > button').html('<div class="row"><span id="cart-total"> ' + json['total'] + '</span></div><div class="row"><img src="image/icons/r3.png" id="cartimg"></div>');

Как мне добавить {{ text_sebet }} в этот js файл? Пробовал добавить php код, пробовал приравнять к var foo = '{{ text_sebet }}'; и добавить переменную foo, но или не выходит текст или ошибка кода.

 

Спасибо заранее за помощь

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


@nikifalex в catalog/controller/common/header.php 

$data['text_sebet'] = $this->language->get('text_sebet');

в catalog/language/moi_yaziki/common/header.php и footer.php добавил

$_['text_sebet']          = 'Корзина';

В HomePage все окей и вызваю значение при вводе {{text_sebet}}

Как вызвать в common.js что бы при действии тоже выводилось значение {{text_sebet}}

Змінено користувачем Orkh3ll0
Надіслати
Поділитися на інших сайтах


@nikifalex я могу нормально выводить на экран в .twig файлах, но не знаю как вызвать его в .js файле

.js не выводит значение при вводе {{text_sebet}}

 

Змінено користувачем Orkh3ll0
Надіслати
Поділитися на інших сайтах


Добавил в header.twig

<input type="hidden" value="{{ text_sebet }}" id="pprts" />

Добавил в common.js  файл var sebet =$("#pprts").val(); 

 и в строку вывода кнопки добавил sebet. результат "undefined"

$('#content').parent().before('<div class="alert alert-success alert-dismissible"><i class="fa fa-check-circle"></i> ' + json['success'] + ' <button type="button" class="close" data-dismiss="alert">&times;</button></div>'+sebet+'');

 

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


@Orkh3ll0 используйте json, у вас же есть перед глазами пример, как выводится сообщение об успешном добавлении товара в корзину, значит делайте так же - если нужен вывод своего текста при успешном добавлении товара в корзину, то в контроллере корзины добавьте куда-нибудь после 

$json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . $this->request->post['product_id']), $product_info['name'], $this->url->link('checkout/cart'));

свой код, например

$json['test'] = "test";

А дальше в common.js внутри if (json['success']) { выводитесь через json['test']

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

Гість
Ця тема закрита для публікації повідомлень.
×
×
  • Створити...

Important Information

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