[Помощь] VirtueMart - почемуто нельзя скрыть ненужный товар

Статус
В этой теме нельзя размещать новые ответы.

th7

Постоялец
Регистрация
21 Апр 2008
Сообщения
119
Реакции
9
1. Когда в админке снимаю с публикации товара, то он не скрывается.. а просто после заголовка товара написано (скрыто)
2. Привязал товары к наличию.. надпись "Позвоните чтобы уточнить цену" не выводится если товара нет на складе.
Подскажите пожалуйста что делать и где ковырять.
 
1. если у тебя снят товар с публикации но ты под админом на сайте - у тебя будет написано "скрыто" рядом с названием товара, если ты выйдешь и не будешь под админом у тебя этот товар не будет отображаться.
 
2. Привязал товары к наличию.. надпись "Позвоните чтобы уточнить цену" не выводится если товара нет на складе.
Подскажите пожалуйста что делать и где ковырять.
В товаре надо указать кол-во доступного на складе.
 
2. Привязал товары к наличию.. надпись "Позвоните чтобы уточнить цену" не выводится если товара нет на складе.
Подскажите пожалуйста что делать и где ковырять.

А причем здесь наличие товара? Это сообщение выводиться только в случае если у товара нет цены, что в принципе логично исходя из текста сообщения:). Когда в наличие нет товара вместо кнопки купить выводиться "уведомить о наличии"
 
Спасибо... ваша информация помогла...
Еще один вопрос..!
Как сделать так чтоб у товара которого нет в наличии.. была надпись "нет в наличии" ковырять на сколько я понимаю надо в browse.tpl.
 
Нужно чуток с кодом шаблонов повозиться. Делал по инструкции(гдето в инете находил) следующее:
Сделал свои картинки
na_zakaz.png //если позиция заказная
no.png //нет в наличии
so_sklada.png //со склада

Залил новые картинки в components/com_virtuemart/themes/default/images/availability и удалил все старые

В БД выполнил запрос
UPDATE `jos_vm_product` SET product_availability = 'na_zakaz.png';
UPDATE `jos_vm_product` SET product_availability = 'so_sklada.png' WHERE product_in_stock>0

Дальше редактируем файл components/com_virtuemart/themes/default/templates/common/availability.tpl.php
и после кода
echo vmCommonHTML::imageTag( VM_THEMEURL."images/availability/".$product_availability, $product_availability ).' '

добавляем:

echo '<br>';
if($product_availability=='so_sklada.png'){
if($product_in_stock=="1") {
echo '<font style="color:#c08e33;font-weight:bold;">в наличии, ограниченное количество</font>';
} elseif ($product_in_stock>0) {
echo '<font style="color:green;font-weight:bold;">есть в наличии</font>';
} else {
echo '<font style="color:#c08e33;font-weight:bold;">ожидаеться</font>';
}
} else {
echo '<font style="color:red;font-weight:bold;">нет в наличии</font>';
}
Дальше в этом же файле удаляем код:
<div class="availabilityHeader"><?php echo $VM_LANG->_('PHPSHOP_AVAILABILITY') ?></div>
<br />

Опять редактируем файл
administrator/components/com_virtuemart/html/shop.browse.php
Вот этот код:
$products[$i]['product_availability'] = $db_browse->f("product_availability");

Заменяем на:

// $products[$i]['product_availability'] = $db_browse->f("product_availability");
$tpl->set( 'product_available_date', $products[$i]['product_available_date'] );
$tpl->set( 'product_availability', $db_browse->f("product_availability"));
$products[$i]['product_availability'] = $tpl->fetch( 'common/availability.tpl.php');

И последний файл:
components/com_virtuemart/themes/default/templates/browse/browse_1.php

Перед кодом:
<div class="browseProductDescription">
Вставляем следующий код:
<div class="availability" style="float:right;width:213px;margin: 3px;">
<?php
if( $this->get_cfg( 'showAvailability' )) {
echo $product_availability;


}
?>
</div>

Вроде все.
 
Спасибо... ваша информация помогла...
Еще один вопрос..!
Как сделать так чтоб у товара которого нет в наличии.. была надпись "нет в наличии" ковырять на сколько я понимаю надо в browse.tpl.

В предыдущем посте интересная инструкция, но зачем так заморачиватся. Во-первых каждый раз придется выполнять запрос к базе для замены product_availability или менять ручками. Если необходимо просто написать "Нет в наличии", то нужно поправить один файл шаблона, правда в зависимости о того где нужно выводить.
Если например в стандартном шаблоне browse_1.php, над кнопкой купить.
Находим <span class="browseAddToCartContainer"> и перед ним пишем

PHP:
<?php if ($product_in_stock < 1) { ?>
<br/><span>Нет в наличии</span><br/>
<?php } ?>

Если нужно в другом месте соответственно вставляем в другом шаблоне.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху