VM 2.x Быстрый просмотр товаров virtuemart 2 во всплывающем окне

Чем выводятся на картинках товара лейблы Hot, Sale, Offers?
к примеру в шаблоне карточки товара кодом:
Код:
                             <?php if ($product->override == 1 && ($product->product_price_publish_down > 0)){ ?>
                            <div class="discount limited"><?php echo JText::_('DR_LIMITED_OFFER');?></div>
                              <?php } elseif($discont >0 && $product->product_sales < 20 ) { ?>
                             <div class="discount"><?php echo JText::_('DR_SALE');?></div>
                            
                                <?php } elseif ($product->product_sales > 20) {?>
                                  <div class="hit"><?php echo JText::_('DR_HOT');?></div>
                                  <?php } ?>

а вообще можно сделать подобное при помощи плагина BIT Virtuemart Product Badges из Для просмотра ссылки Войди или Зарегистрируйся
 
Так в итоге и не понял как его выводить? Может подскажет кто? Вот я его поставил и что дальше?
Читай первую страницу. Там писали: cсылка на плагин в папке твой_шаблонhtml\com_virtuemart\productdetails прописываий
Код:
<div class="quick_id"><a class="fancybox fancybox.ajax"  title="<?php echo $product->product_name;?>" href="<?php echo JRoute::_('index.php?option=com_virtuemart&view=productdetails&tmpl=component2&quick=true&virtuemart_product_id='.$product->virtuemart_product_id); ?>"><i class="icon-eye-open"></i><?php echo JText::_('COM_VIRTUEMART_QUICK') ?></a></div>
 
А куда его прописывать, в какой файл? Просто в конце кода?
 
А куда его прописывать, в какой файл? Просто в конце кода?
Не просто в конце, а посмотри по разметке твоего шаблона (Открывай страницу категории Virtuemart и запускай Mozilla - Firebug или Chrome - проверить элемент). Смотри после какого элемента, ты хочешь влепить код выше, у меня это било в <div class="spacer"> после закрытия h2...
 
а файл то в какой вставлять в папке productdetails? Я посмотрел на самой фотке у меня class="browseImage " но он расположен в Для просмотра ссылки Войди или Зарегистрируйся а весь блок реагирует вот на этот путь Для просмотра ссылки Войди или Зарегистрируйся
 
а файл то в какой вставлять в папке productdetails? Я посмотрел на самой фотке у меня class="browseImage " но он расположен в Для просмотра ссылки Войди или Зарегистрируйся а весь блок реагирует вот на этот путь Для просмотра ссылки Войди или Зарегистрируйся
Учи матьчасть...) Файлы *.css отвечают за косметику, а не за вывод чего то. Тебе этот класс нужно найти в твой_шаблон\html\com_virtuemart\productdetails\default.php (редактируй с помощью Notepad++)... А вообще ... не обижайся, но может не лезь туда, ибо с твоими познаниями сможешь запороть сайт, хотя если он тестовый то вперед, но сначала почитай о HTML разметке и структуре CMS чтоб не задавать глупых вопросов...
 
Вот плагин, взят с лицензии Шаблона Для просмотра ссылки Войди или Зарегистрируйся . Тут он нормально работает.
Вобщем разобрался.
1.Сначала там квиквью был сделан по принциппу ,кликнул ссылку открыл карточку товара в попапе, метод который в основном везде и описан.
2.1 принцип был удален,или частично просто затерся в шаблоне.Начал работать другой принцип.Клик на кнопку и через аякс вызов плагина квиквью.
Инструкция.
1.Устанвоили плагин.Настроек не каких нет,надо доработки ,открываем плагин и пилим,если у кого есть желания,выводит кнопки в плагин))
2.Вот тот зловещий код который надо вставить в шаблон,где хотитте выводить кнопку
<input type="hidden" class="quick_ids" name="virtuemart_product_id" value="<?php echo $product->virtuemart_product_id ?>"/>
В самом плагине,скрипт считывает значения инпута и создает кнопку с нужным айди
Вот скрипт котроый отвечает
Код:
jQuery(document).ready(function () {
                     jQuery("#product_list .vmproduct li ").each(function(indx, element){
                        var my_product_id = jQuery(this).find(".quick_ids").val();
                        //alert(my_product_id);
                        if(my_product_id){
                            jQuery(this).append("<div class=\'quick_btn\' onClick =\'quick_btn("+my_product_id+")\'><i class=\'icon-eye-open\'></i>"+show_quicktext+"</div>");
                        }
                        jQuery(this).find(".quick_id").remove();
                    });
                });

По этому надо смотреть куда вы вставили инпут и правильно прописать в самом джс.Он должен вставлен в цикле,вывода продуктов
Пробуйте.Все заработало.Он просто заточен под шаблон
 
Такая ссылка ведет на пустую страницу.
Голову сломал, пытаясь понять почему в опциях указан "...&tmpl=component2..."
не смог правильно подобрать ссылку с опциями, чтобы заставить открыть товар через нужный шаблон.
Может сможет кто помочь с этим?

Код:
<div class="quick_id"><a class="fancybox fancybox.ajax"  title="<?php echo $product->product_name;?>" href="<?php echo JRoute::_('index.php?option=com_virtuemart&view=productdetails&tmpl=component2&quick=true&virtuemart_product_id='.$product->virtuemart_product_id); ?>"><i class="icon-eye-open"></i><?php echo JText::_('COM_VIRTUEMART_QUICK') ?></a></div>
вот он cсылка на default_quick.php в папке.. productdetails
активация установкой плагина

Цель - заставить работать функцию быстрого просмотра.
пытался настроить по инструкции уважаемого olejenya выше.. не получается.
Установлен Quick плагин, но по всей видимости работать он не желает :(
Инпут выводит правильные айди, а вот кнопок никаких, нигде не появляется
 
Последнее редактирование:
А есть такие, у кого на VM3 работает быстрый просмотр?

Похоже, все эти решения на VM2...
Quicklook от NetBase (Вроде v2)выдает ошибку 500 на файл plugins/system/netbase_quicklook/lib_netbase/product_detail.php
Quick плагин так и не смог настроить и запустить. Скрипт вставил, инпут вставил (id получает верно), но кнопка не появляется..

SJ QuickView 2.0 установил, настроил, кнопка появляется, ссылка на ней верная, в новом окне открывается нормально, а вот во всплывающем пусто... (Notice: Undefined offset: 1 in /var/www/.../plugins/system/plg_sj_vm_quickview/plg_sj_vm_quickview.php on line 84)

вот строчки в файле plg_sj_vm_quickview.php:
Код:
$is_ajax = !empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest';
        $is_ajax_qv = (int)JRequest::getVar('isajax_qv', 0);
        if ($is_ajax && $is_ajax_qv) {
                $body = JResponse::GetBody();
                preg_match("~<body.*?>(.*?)<\/body>~is", $body, $match);
                echo '<div id="sj_quickview">'.$match[1].'</div>';
                die;
                //die(json_encode('<div id="sj_quickview">'.$match[1].'</div>'));
        }
Может кто знает в чем дело?
VM3.0.9
 
Последнее редактирование:
Назад
Сверху