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

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

Как сделать сообщение "Выбрать вариант" активной ссылкой на страницу товара VirtueMart 3?

 (Прочитано 293 раз)
0 Пользователей и 1 Гость смотрят эту тему.
aleks_yug
Завсегдатай
*****

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

Сообщений: 618


« : 04.01.2016, 13:39:07 »

Здравствуйте всем! С наступившим новым годом!
Возник, видимо, не совсем тривиальный вопрос (поскольку ответ на него по на форуме пока не нашел).
На странице категории при использовании дочерних товаров (в частности, выбирается цвет товара с использованием плагина stockablecustomfields) нет возможности кинуть товар в корзину напрямую, не заходя на страницу товара.
Выходит сообщение для пользователя: "Выберите вариант", которое формируется в файле: components/com_virtuemart/sublayouts/addtocartbtn.php следующим кодом:

echo '<span name="addtocart" class="addtocart-button-disabled" title="'.vmText::_( 'COM_VIRTUEMART_ADDTOCART_CHOOSE_VARIANT' ).'" >'.vmText::_( 'COM_VIRTUEMART_ADDTOCART_CHOOSE_VARIANT' ).'</span>';

Естественно, оно неактивно и может вогнать слишком задумчивого пользователя в полный ступор - сколько не клацай по этой "предупреждалке", никуда не переходишь... Включив голову, клиент может, конечно, перейти по ссылке, кликнув на картинку товара, или на название. А если она (голова) принципиально не включается, то просто уйдет с сайта, разозлившись на весь белый свет!
Короче, необходимо сделать это "сообщение" активной ссылкой на карточку товара. Но попытки подставить сюда иную конструкцию, например:

echo '<a href="index.php?option=com_virtuemart&view=productdetails&virtuemart_product_id=' . $product->virtuemart_product_id . '&virtuemart_category_id=' . $product->virtuemart_category_id.'">'.vmText::_ ( 'COM_VIRTUEMART_ADDTOCART_CHOOSE_VARIANT' ).'</a>'

или иной вариант ни к чему не привели. Отправляет куда угодно, только не на страницу товара. Я недавно начал разбираться в VM3 и пока разобраться с этим моментом не вышло. Думаю, наверняка уже кто-то озадачивался подобным вопросом.
Буду весьма благодарен за подсказку!
Записан
aleks_yug
Завсегдатай
*****

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

Сообщений: 618


« Ответ #1 : 05.01.2016, 13:52:46 »

Действительно, просто слабо знаком с vm3...
Все достаточно просто: в данном конкретном случае нужно редактировать не addtocartbtn.php а addtocartbar.php (естественно, не в самом компоненте, а HTML шаблона).
Правда, закомментировать в addtocartbtn
echo '<span name="addtocart" class="addtocart-button-disabled" title="'.vmText::_( 'COM_VIRTUEMART_ADDTOCART_CHOOSE_VARIANT' ).'" >'.vmText::_( 'COM_VIRTUEMART_ADDTOCART_CHOOSE_VARIANT' ).'</span>';
в этом случае придется.
А затем добавить else к коду в addtocartbar.php
Код:
if(!empty($addtoCartButton)){ ?>
    <span class="addtocart-button">
    <?php echo $addtoCartButton ?>
    </span> <?php
} ?>
Будет так:
Код:
if(!empty($addtoCartButton)){ ?>
    <span class="addtocart-button">
    <?php echo $addtoCartButton ?>
    </span> <?php
} else {
    $link = 'index.php?option=com_virtuemart&view=productdetails&virtuemart_category_id=' . $product->virtuemart_category_id.'&virtuemart_product_id=' . $product->virtuemart_product_id. '';
    echo '<a class="addtocart-button-disabled" href ="' . JRoute::_($link). '">' . vmText::_ ('COM_VIRTUEMART_ADDTOCART_CHOOSE_VARIANT'). '</a>';
}
И все...
Предупреждаю - такой вариант функционален при использовании плагина stockablecustomfields (дочерние товары в данном случае создаются при помощи его, в частности - выбор вариантов цвета). При использовании штатного настраиваемого поля multi variant в этом нет необходимости. (если не ошибаюсь).
Короче, сам спросил - сам ответил...
Всем спасибо!
« Последнее редактирование: 05.01.2016, 16:01:41 от aleks_yug » Записан
Страниц: [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