[Помощь] VM2 - Редактирование фреймового всплывающего окна купленного товара

А на VM3 кто нибудь это делал? данные решения не работают...
Не правда, Денис. Все работает. В VM3 немного поменялась модель, но в основе осталось почти всё то же самое.
В качестве примера стоит использовать оригинальный файл из поставки VM3.
Взять его можно в components\com_virtuemart\views\cart\tmpl\padded.php
 
В VM3 немного поменялась модель, но в основе осталось почти всё то же самое
Согласен, но так как сам не силен в php, прошу помощи. Хотелось бы картинку с количеством..
 
Для просмотра ссылки Войди или Зарегистрируйся

Картинки в наборе не присутствуют, поэтому придется их доставать вручную:
PHP:
if (!class_exists('VmImage')) require(JPATH_VM_ADMINISTRATOR . DS . 'helpers' . DS . 'image.php');
$productModel = VmModel::getModel('product');
$productModel->addImages($this->products,1);
и дальше в вашем цикле перебора продуктов по аналогии с оригинальным файлом делаем примерно следующее:
PHP:
$img=$product->images[0]->file_url_thumb;
if ($img) echo "<img src='/$img' />"; // картинка
echo $product->quantity; // кол-во
 
Странно, но в vm3 с родным padded у меня не выводится кол-во добавленного товара
В чем может быть проблема?
отдельно echo $product->quantity; выводит нормально...
 
Странно, но в vm3 с родным padded у меня не выводится кол-во добавленного товара
В чем может быть проблема?
отдельно echo $product->quantity; выводит нормально...
Где не выводится?
 
Где не выводится?
В этом самом фреймовом всплывающем окне купленного товара.
В VM2.6 точно помню было написано " 10 х товар Добавлен в корзину". Стандартный код без всяких модификаций. При обновлении до VM3 не уследил когда эта надпись стала без количества...
 
denis2014,

ну откройте вы файл padded.php там ничего сложного нет.
в родном файле производится проверка
PHP:
if($product->quantity>0){
echo '<h4>'.vmText::sprintf('COM_VIRTUEMART_CART_PRODUCT_ADDED',$product->product_name,$product->quantity).'</h4>';
}
решение я вам подсказал - выводите без проверки:
PHP:
echo $product->quantity; // кол-во

Вы сами себе противоречите. У вас есть готовое решение , вы сами об этом заявляете:
отдельно echo $product->quantity; выводит нормально...
Так чего ж вам не хватает для счастья? Вывели кол-во и всё.
 
Так чего ж вам не хватает для счастья? Вывели кол-во и всё.
Так я это и сделал, благодаря Вам.
Просто, если бы не полез в эту тему, так бы и не заметил, что по умолчанию перестало выводиться кол-во
 
Уверен, что для вас решить эту проблему в два счёт, просто уделите несколько минут, пожалуйста. Я уже неделю пытаюсь решить эту задачу, весь интернет перерыл, сам ковырялся, на форумах писал. Так и не удалось.. Помогите..
Задача: вывести во всплывающем окне VirtueMart 2 (которое появляется при добавлении товара в корзину) значение, выбранное из списка (настраиваемые поля). Например, у нас есть футболка. Есть три цвета у неё. Покупатель выбрал цвет жёлтый и нажал добавить в корзину. Появляется всплывающее окно(туда я уже добавил название этого товара, артикул и фото). Как добавить ещё и тот самый выбранный цвет жёлтый?
Мучился я очень долго и приблизился к решению максимально близко.. Добавил этот код в файл padded.php. :
Код:
Код:
foreach($this->product->customfieldsCart[0]->options as $field) {
echo $field->custom_value;
}
Но проблема в том, что выводятся все значения из списка(то есть все цвета, не только жёлтый). А нужно выводить только тот цвет, который выберет клиент. А если он закроет это окно и выберет другой цвет, то вывести в окошке нужно уже вновь выбранный цвет.
Если кто поможет с решением - до земли поклон. Времени убил на это много, весь интернет перерыл - результат 0.
Надежда только на ваш форум.
 
Уверен, что для вас решить эту проблему в два счёт, просто уделите несколько минут, пожалуйста. Я уже неделю пытаюсь решить эту задачу, весь интернет перерыл, сам ковырялся, на форумах писал. Так и не удалось.. Помогите..
Задача: вывести во всплывающем окне VirtueMart 2 (которое появляется при добавлении товара в корзину) значение, выбранное из списка (настраиваемые поля). Например, у нас есть футболка. Есть три цвета у неё. Покупатель выбрал цвет жёлтый и нажал добавить в корзину. Появляется всплывающее окно(туда я уже добавил название этого товара, артикул и фото). Как добавить ещё и тот самый выбранный цвет жёлтый?
Мучился я очень долго и приблизился к решению максимально близко.. Добавил этот код в файл padded.php. :
Код:
Код:
foreach($this->product->customfieldsCart[0]->options as $field) {
echo $field->custom_value;
}
Но проблема в том, что выводятся все значения из списка(то есть все цвета, не только жёлтый). А нужно выводить только тот цвет, который выберет клиент. А если он закроет это окно и выберет другой цвет, то вывести в окошке нужно уже вновь выбранный цвет.
Если кто поможет с решением - до земли поклон. Времени убил на это много, весь интернет перерыл - результат 0.
Надежда только на ваш форум.
Откуда вообще $this-product ? когда либо $this-products , либо $product

Открываем файл components/com_virtuemart/views/cart/tmpl/padded.php
Смотрим кусок кода
PHP:
if($this->products){
    foreach($this->products as $product){
        echo '<h4>'.JText::sprintf('COM_VIRTUEMART_CART_PRODUCT_ADDED',$product->product_name,$product->quantity).'</h4>';
    }
}
Добавим перед echo '<h4>'... новую строку var_dump($product); и возрадуемся, увидев какие данные вернутся от товара!
А дальше выводим все что угодно!
 
Назад
Сверху