Здравствуйте!
Делаю рефакторинг сайта на Joomla 2.5.19, на котором работает VirtueMart 2.6.22. У сайта есть главная страница, на которой есть модуль "Специальные предложения", т.е. товары. Я добавил кнопку "Добавить в корзину" в шаблон этого модуля, и кнопка отобразилась как нужно, но сам функционал этой кнопки не работает. При клике происходит перезагрузка главной страницы, и на этом всё. Но если этот модуль "Специальные предложения" вывести в пределах VirtueMart, то кнопка функционирует как нужно - товар добавляется в корзину. Ниже покажу код модуля "Специальные предложения", там, где я вывел форму с кнопкой "Добавить в корзину". Пожалуйта, подскажите, что необходимо дописать или доработать, что бы данная кнопка работала вне VirtueMart, на главной странице, в разделе "Специальные предложения". Спасибо.
<?php
/**
* @package Joomla.Tutorials
* @subpackage Module
* [member=126442]copyright[/member] (C) 2012 http://jomla-code.ru
* @license License GNU General Public License version 2 or later; see LICENSE.txt
*/
// No direct access to this file
defined('_JEXEC') or die;
$product_model = VmModel::getModel('product');
?>
<div class="row">
<div class="col-xs-5 text-start">
<h4>Специальное предложение</h4>
</div>
</div>
<div class="w-100">
<div class="owl-carousel profit">
<?php foreach ($specProducts as $item): ?>
<?php
$product = $product_model->getProduct($item->id);
$product_model->addImages($product);
//echo'<pre>'; var_dump($product->images); echo'</pre>';
?>
<div class="wraper-profit-item-slider">
<a href="<?php echo $product->link; ?>">
<div class="image-carusel center-block">
<?php echo $product->images[0]->displayMediaThumb('', false); ?>
</div>
<div class="caption-carusel">
<p><?php echo $product->product_name; ?></p>
<?php if ($item->new_price) : ?>
<span><?php if ($item->new_price) { echo round($item->new_price, 2).' руб.'; } ?> <del><?php if ($item->old_price) { echo round($item->old_price, 2).' руб.'; } ?> </del></span>
<?php else: ?>
<span><?php if ($item->old_price) { echo round($item->old_price, 2).' руб.'; } ?> </span>
<?php endif; ?>
</div>
</a>
<form method="post" class="product js-recalculate" action="<?php echo JRoute::_ ('index.php'); ?>">
<input name="quantity" type="hidden" value="<?php echo (int) $product->step_order_level; ?>" />
<?php // Product custom_fields
if (!empty($product->customfieldsCart)) {
?>
<div class="product-fields">
<?php foreach ($product->customfieldsCart as $field) { ?>
<div class="product-field product-field-type-<?php echo $field->field_type ?>">
<?php if ($field->show_title) { ?>
<span class="product-fields-title-wrapper"><span class="product-fields-title"><strong><?php echo JText::_ ($field->custom_title)?></strong></span>
<?php }
if ($field->custom_tip) {
echo JHTML::tooltip ($field->custom_tip, JText::_ ($field->custom_title), 'tooltip.png');
} ?></span>
<span class="product-field-display"><?php echo $field->display ?></span>
<span class="product-field-desc"><?php echo $field->custom_field_desc ?></span>
</div><br/>
<?php } ?>
</div>
<?php
}
/* Product custom Childs
* to display a simple link use $field->virtuemart_product_id as link to child product_id
* custom_value is relation value to child
*/
if (!empty($product->customsChilds)) {
?>
<div class="product-fields">
<?php foreach ($product->customsChilds as $field) { ?>
<div class="product-field product-field-type-<?php echo $field->field->field_type ?>">
<span class="product-fields-title"><strong><?php echo JText::_ ($field->field->custom_title)?></strong></span>
<span class="product-field-desc"><?php echo JText::_ ($field->field->custom_value)?></span>
<span class="product-field-display"><?php echo $field->display ?></span>
</div><br/>
<?php } ?>
</div>
<?php }
if (!VmConfig::get('use_as_catalog', 0) ) {
?>
<?php // Display the quantity box
$stockhandle = VmConfig::get ('stockhandle', 'none');
if (($stockhandle == 'disableit' or $stockhandle == 'disableadd') and ($product->product_in_stock - $product->product_ordered) < 1) {
?>
<a href="<?php echo JRoute::_ ('index.php?option=com_virtuemart&view=productdetails&layout=notify&virtuemart_product_id=' . $product->virtuemart_product_id); ?>" class="notify"><?php echo JText::_ ('COM_VIRTUEMART_CART_NOTIFY')?></a>
<?php } else { ?>
<!-- <label for="quantity<?php echo $product->virtuemart_product_id; ?>" class="quantity_box"><?php echo JText::_ ('COM_VIRTUEMART_CART_QUANTITY'); ?>: </label> -->
<input type="hidden" class="quantity-input js-recalculate" name="quantity[]" onblur="check(this);" value="<?php if (isset($product->step_order_level) && (int)$product->step_order_level > 0) {
echo $product->step_order_level;
} else if(!empty($product->min_order_level)){
echo $product->min_order_level;
} else {
echo '1';
} ?>"/>
<?php // Display the quantity box END ?>
<?php
// Display the add to cart button
?>
<input onclick="yaCounter24482669.reachGoal (\'addkorzina\'); return true;" type="submit" name="addtocart" class="addtocart-button without-text" value="" title="<?php echo JText::_( 'COM_VIRTUEMART_CART_ADD_TO' ); ?>" />
<!--?php echo shopFunctionsF::getAddToCartButton ($product->orderable); ?-->
<?php } ?>
<?php }
// Display the add to cart button END ?>
<input type="hidden" class="pname" value="<?php echo htmlentities($product->product_name, ENT_QUOTES, 'utf-8')?>"/>
<input type="hidden" name="option" value="com_virtuemart"/>
<input type="hidden" name="view" value="cart"/>
<noscript><input type="hidden" name="task" value="add"/></noscript>
<input type="hidden" name="virtuemart_product_id[]" value="<?php echo $product->virtuemart_product_id ?>"/>
<?php $url = JRoute::_('index.php?option=com_virtuemart&view=productdetails&task=askquestion&virtuemart_product_id=' . $product->virtuemart_product_id . '&virtuemart_category_id=' . $product->virtuemart_category_id . '&tmpl=component');?>
<div class="oneclick-block">
<a data-toggle="modal" data-target="#oneclick-<?php echo $product->virtuemart_product_id ?>" class="modal-<?php echo $product->virtuemart_product_id ?> oneclick-btn text-center" href="<?php echo $url ?>" onclick="yaCounter24482669.reachGoal ('nazalipayoneclik'); return true;"> Заказать в 1 клик</a>
<div class="modal bd-example-modal-sm fade" id="oneclick-<?php echo $product->virtuemart_product_id ?>" tabindex="-1" role="dialog" aria-hidden="true"></div>
</div>
</form>
</div>
<?php endforeach; ?>
</div>
</div>