Часто приходится выводить в карточку товара какую-либо дополнительную информацию, например вывести артикул в карточку товара или например, габариты товара. В большинстве шаблонов, вывод этой информации крайне ограничен разработчиками, по-этому публикую очень полезную справку по полям, которые можно вывести в карточке товара.
Сразу хочу сказать, что описывать все данные не стану, так как информации довольно много. Если у Вас есть минимальные познания в PHP, просто возьмите и распечатайте массив, после чего возьмите любую необходимую информацию.
<?php
echo '<pre>';
print_r($this->product);
echo '</pre>';
?>
Вот небольшой список конструкций для вывода наиболее часто необходимой информации.
Название товара
<?php echo $this->product->product_name; ?>
Артикул
<?php echo $this->product->product_sku; ?>
Ссылка задать вопрос по этому товару
<a class="ask-a-question" href="<?php echo $url ?>" ><?php echo JText::_('COM_VIRTUEMART_PRODUCT_ENQUIRY_LBL') ?></a>
Краткое описание
<?php echo $this->product->product_s_desc; ?>
Подробное описание
<?php echo $this->product->product_desc; ?>
Основное изображение
<?php echo $this->product->images[0]->displayMediaFull('class="product-image"',false) ?>
Дополнительные изображения
<?php if(!empty($this->product->images) && count($this->product->images)>1) {
foreach ($this->product->images as $image) {
echo $image->displayMediaThumb('class="product-image"',true,'class="modal"'); //'class="modal"'
}
}
?>
Доступность товара (текст)
<?php echo $this->product->product_availability; ?>
Доступность товара (изображение)
<?php echo JHTML::image(JURI::root().VmConfig::get('assets_general_path').'images/availability/'.$this->product->product_availability, $this-
>product->product_availability, array('class' => 'availability')); ?>
Минимальное количество для заказа
<?php echo $this->product->min_order_level; ?>
Максимальное количество для заказа
<?php echo $this->product->max_order_level; ?>
Единица измерения товара
<?php echo $this->product->product_unit; ?>
Вес
<?php echo $this->product->product_weight; ?>
Единица измерения веса
<?php echo $this->product->product_weight_uom; ?>
Длина
<?php echo $this->product->product_length; ?>
Ширина
<?php echo $this->product->product_width; ?>
Высота
<?php echo $this->product->product_height; ?>
URL товара
<?php echo $this->product->product_url; ?>
Остатки
<?php echo $this->product->product_in_stock; ?>
Можно также вывести мотивирующею надпись, если количество товаров, например меньше 10:
<?php if ($this->product->product_in_stock <= 10) { ?>
<div>Осталось всего <?php echo $this->product->product_in_stock ?> штук в наличии. Спешите!</div>
<?php }?>
Дата поступления товара
<?php echo $this->product->product_available_date; ?>
Рекомендуемый товар (1 или 0)
<?php echo $this->product->product_special ?>, например можно отобразить так:
<?php if ($this->product->product_special == 1) { ?>
<div>Рекомендуем!</div>
<?php }?>
Упаковка
<?php echo $this->product->product_packaging; ?>
Ссылка вернуться в категорию товара
$catturl = JRoute::_('index.php?option=com_virtuemart&view=category&virtuemart_category_id='.JRequest::getInt('virtuemart_category_id',0));
<a href="<?php echo $catturl ?>"><?php echo $this->category->category_name ?></a>
Производитель
<?php echo $this->product->mf_name; ?>