andx
Осваиваюсь на форуме
 
Репутация: +5/-0
Offline
Сообщений: 111
|
 |
« Ответ #60 : 10.03.2011, 16:48:18 » |
|
Спасибо! Все сделал как в сообщении выше включая поправки в след посте. Вот только заглушка во flypage почемуто не отображалась, ради интереса попробовал <?php echo $product_quantaty ?> вместо <?php echo $quantaty ?> и все заработало! VM 1.1.6 ps. Другой вопрос, подскажите куда и какой код прописать, чтобы на товарах, которые не в наличии (условие if ($quantaty>0) и else... ) пропадала кнопка КУПИТЬ и вместо нее появлялась ссылка УВЕДОМИТЬ. Эта функция нужна в browse и flypage pps. И еще вопрос, кто как реализовал сортировку товара по наличию, так чтобы товар в наличии располагался весь сверху? По дефолту в виртумарте есть токо по цене, наименованию, артикулу итп.. Еще желательна дополнительная возможность совмещать сортировку с порядковым номером product_list. У меня товар в категориях отображен в прописанном мною порядке.. Дайте пожалуйста ссылочку или хоть какую инфу, где можно про это прочесть, если есть такое UPD:Пробовал этот мануал, но чтото не работает сортировка по наличию. У меня VM1.1.7. Кто может проверьте у себя и отпишитесь пожалуйста. UPD:Всетки наковырял решение. Делаете как в мануале по ссылке выше, но потом правите VirtueMart.cfg.php как написано здесь. Финальный штрих, чтобы товары в наличии всегда показывались первыми в категории, а не в наличии стояли после - вот этот мануальчик. И как всегда ответы порождают новые вопросы  , подскажите как добавить второе условие сортировки, после этого первого? Тоесть надо, чтобы товары, которые в наличии сверху, располагались еще и по порядковой цифре, стоящей в колонке product_list в БД.
|
|
|
|
« Последнее редактирование: 25.03.2011, 14:51:25 от andx »
|
Записан
|
|
|
|
art-lana
Осваиваюсь на форуме
 
Репутация: +2/-0
Offline
Пол: 
Сообщений: 54
делаю сайты
|
 |
« Ответ #61 : 11.05.2011, 00:15:09 » |
|
Я сделала проще. (у меня VM 1.1.8, на VM 1.1.4 тоже работает, другие версии не проверяла) Из языкового файла понимаем, что "товаров в наличии" это 'PHPSHOP_PRODUCT_FORM_IN_STOCK', изменяем значение на "На складе", идем в \components\com_virtuemart\themes\default\templates\common\availability.tpl.php, находим строки: elseif( ($product_in_stock >= 1 && CHECK_STOCK) ) { ?><span style="font-weight:bold;"> <?php echo $VM_LANG->_('PHPSHOP_PRODUCT_FORM_IN_STOCK')?> : </span><?php echo $product_in_stock ?> Теперь понятно, что количество выводит $product_in_stock, закомментировав ее, мы избавляемся от цифры наличия товаров на складе. elseif( ($product_in_stock >= 1 && CHECK_STOCK) ) { ?><span style="font-weight:bold;"> <?php echo $VM_LANG->_('PHPSHOP_PRODUCT_FORM_IN_STOCK')?> </span><?php // echo $product_in_stock ?> В языковом файле PHPSHOP_AVAILABILITY обозначаем как "Наличие:" В итоге получаем: Наличие: На складе. Либо Наличие: Этого товара нет в наличии (можно написать "под заказ", или кому как нравится) Способ наверно для блондинок, но меня полностью устраивает 
|
|
|
|
« Последнее редактирование: 11.05.2011, 00:24:19 от art-lana »
|
Записан
|
|
|
|
artMelnikov
Осваиваюсь на форуме
 
Репутация: +1/-0
Offline
Пол: 
Сообщений: 54
|
 |
« Ответ #62 : 13.07.2011, 23:43:50 » |
|
J 1.5.22 VM 1.1.8. Сделал все как в 37-39 постах. Работает Спасибо! Но не пойму как сделать, чтоб на товарах, которых нет в наличии вместо "Уведомлять меня" была тоже кнопка "Купить", а лучше "Заказать" и их можно было так же купить как и те что в наличии.
|
|
|
|
|
Записан
|
|
|
|
beagler
Moderator
   
Репутация: +316/-4
Offline
Пол: 
Сообщений: 2994
http://beagler.ru/
|
 |
« Ответ #63 : 14.07.2011, 00:21:13 » |
|
отключить в админке отслеживание остатка товара
|
|
|
|
|
Записан
|
|
|
|
artMelnikov
Осваиваюсь на форуме
 
Репутация: +1/-0
Offline
Пол: 
Сообщений: 54
|
 |
« Ответ #64 : 14.07.2011, 22:41:33 » |
|
отключить в админке отслеживание остатка товара
Блиииин. Вот я тормоз. Спасибо большое! + тебе.  Подумал что если отключить отслеживание остатка то и "в наличии/ нет в наличии" не будет работать. Проверил, работает. Ура!
|
|
|
|
|
Записан
|
|
|
|
artMelnikov
Осваиваюсь на форуме
 
Репутация: +1/-0
Offline
Пол: 
Сообщений: 54
|
 |
« Ответ #65 : 14.07.2011, 23:13:44 » |
|
А можно сделать так, чтоб у товара, которого нет в наличии цвет кнопки "Купить" или картинка кнопки корзины были Красного цвета? А еще круче, чтобы и в корзине Название товара которого нет в наличии, тоже было красным. Чтоб человек ясно понимал, что данный товар покупается под заказ и его придется ждать.
|
|
|
|
« Последнее редактирование: 25.07.2011, 21:41:13 от artMelnikov »
|
Записан
|
|
|
|
|
vtx
|
 |
« Ответ #66 : 26.08.2011, 00:03:21 » |
|
Лучше в карточке и браусе сделать красным имя товара, чтобы покупатель сразу понимал, что ему надо ждать. иначе получите кучу отказов в корзине.
<?php if ($product_in_stock=0){?> <div id="not_in_stock" style="color:red"> <?php echo $product_name; ?> <strong>Доставим под заказ.</strong> </div> <?php }else{ echo $product_name?>
|
|
|
|
|
Записан
|
|
|
|
artMelnikov
Осваиваюсь на форуме
 
Репутация: +1/-0
Offline
Пол: 
Сообщений: 54
|
 |
« Ответ #67 : 28.08.2011, 23:56:57 » |
|
Лучше в карточке и браусе сделать красным имя товара, чтобы покупатель сразу понимал, что ему надо ждать. иначе получите кучу отказов в корзине.
<?php if ($product_in_stock=0){?> <div id="not_in_stock" style="color:red"> <?php echo $product_name; ?> <strong>Доставим под заказ.</strong> </div> <?php }else{ echo $product_name?>
А можешь написать куда конкретно вставлять код, потому что и так его и так вертел... не выходит. особенно в корзине было бы хорошо выделить цветом товары с нулевым остатком. Заранее спасибо!
|
|
|
|
|
Записан
|
|
|
|
|
vtx
|
 |
« Ответ #68 : 29.08.2011, 14:01:26 » |
|
в корзину принципиально никогда не лез. а кодом заменить заглушку на вывод имени товара. но поле product_in_stock должно само по себе быть заглушкой, или тянуть значение запросом из базы.
|
|
|
|
|
Записан
|
|
|
|
artMelnikov
Осваиваюсь на форуме
 
Репутация: +1/-0
Offline
Пол: 
Сообщений: 54
|
 |
« Ответ #69 : 29.08.2011, 16:20:34 » |
|
Поправил чуток код и все заработало! в browse_1.php и flypage.tpl.php заменил код <?php echo $product_name ?> на <?php if ($product_in_stock<1){?> <?php echo $product_name; ?> <strong style="color:red"> (Под заказ)</strong> <?php }else echo $product_name ?> сохранил файл в кодировке UTF-8. после этого возле названия товара с остатком меньше 1 появилась красная надпись "(Под заказ)" to vtxу тебя в коде после else лишняя скобка была и $product_in_stock=0 тоже не проканало. А за помощь Спасибо! + в карму
|
|
|
|
|
Записан
|
|
|
|
z00mER
Захожу иногда

Репутация: +0/-0
Offline
Сообщений: 9
|
 |
« Ответ #70 : 06.09.2011, 02:17:03 » |
|
Подскажите пожалуйста, очень надо чтобы возле товаров что Под заказ была кнопка с функцией купить но с картинкой "Заказать". Дабы была логичной схема. Спасибо.
|
|
|
|
« Последнее редактирование: 06.09.2011, 02:39:52 от z00mER »
|
Записан
|
|
|
|
Zyama
Захожу иногда

Репутация: +1/-0
Offline
Сообщений: 17
|
 |
« Ответ #71 : 07.10.2011, 20:34:50 » |
|
Никто не пробовал добавить эту же функцию в сопутствующие товары, в productsnapshot.tpl.php?
|
|
|
|
|
Записан
|
|
|
|
Sedoy
Support Team
   
Репутация: +77/-10
Offline
Пол: 
Сообщений: 1084
Интересно,в какой кодировке пишут врачи?
|
 |
« Ответ #72 : 16.12.2011, 17:25:08 » |
|
отключить в админке отслеживание остатка товара да но между "купить" и "заказать" есть некая разница.... как-то нужно выделить и показать челу, что этот товар "под заказ" идеологически правильней вообще нужно как-то разделить "продажа" и "заказ" т.е. должно быть две формы и соответственно 2 документа одна: купил-оплатил-получил другая: заказал-оплатил-получил в офлайн-базах это две разные операции/документы (записи в базе) кто как решает такие вопросы?
|
|
|
|
|
Записан
|
|
|
|
artMelnikov
Осваиваюсь на форуме
 
Репутация: +1/-0
Offline
Пол: 
Сообщений: 54
|
 |
« Ответ #73 : 16.12.2011, 23:44:10 » |
|
кто как решает такие вопросы?
Покупатель видит в списке товаров в наличии он или под заказ. добавляет в корзину и такой и такой товар. Менеджер, формируя неподтвержденную заявку в 1с видит, что какого-то товара нет в наличии и звонит покупателю и говорит что он под заказ и надо ждать, если устраивает, заказывает, если нет, меняет или убирает. Проблемыв следующем: 1. если на складе 3 шт., а он заказал 5 шт., то покупатель не знает, что он заказал больше, чем есть в наличии. на сайте http://www.compass.com.ru/ когда в корзине количество товара превышает реальный остаток, наименование становится красным и возле него появляется реальный остаток, например: Жесткий диск (3) 2. в корзине не видно, есть товар или нет в наличии. можно запутаться.
|
|
|
|
|
Записан
|
|
|
|
Sedoy
Support Team
   
Репутация: +77/-10
Offline
Пол: 
Сообщений: 1084
Интересно,в какой кодировке пишут врачи?
|
 |
« Ответ #74 : 17.12.2011, 11:09:56 » |
|
по идее он должен видеть реальный остаток на складе правда, с одной стороны, многие спецом это скрывают с другой, сам маг должен работать в реальном времени со складом, если имеется параллельная торговля офлайн с того же склада
кто нибудь решал вопрос кнопки "купить" таком разрезе: в наличии >0 - выводит "купить" в наличии =0 - выводит "заказ" для товара у которого свойства или позиции - выводит "выбрать"
есть готовые или близкие решения?
|
|
|
|
|
Записан
|
|
|
|
тм
Захожу иногда

Репутация: +0/-0
Offline
Сообщений: 7
|
 |
« Ответ #75 : 31.12.2011, 00:46:27 » |
|
Ничего не понимаю,как сделать,чтобы на странице с товарами была надпись, есть в наличии, нет в наличии,под заказ, уценка. Можно очень подробно по шагам рассказать, как это сделать? или может кто-то за оплату сделает?
|
|
|
|
|
Записан
|
|
|
|
beagler
Moderator
   
Репутация: +316/-4
Offline
Пол: 
Сообщений: 2994
http://beagler.ru/
|
 |
« Ответ #76 : 31.12.2011, 10:55:57 » |
|
по шагам вроде и так в теме расписано. Если не понятно - создайте тему в коммерческих вопросах, опишите Вашу задачу. Приложите макет того что хотите получить. Объявите бюджет. Помогут.
|
|
|
|
|
Записан
|
|
|
|
tigra-uki
Осваиваюсь на форуме
 
Репутация: +6/-0
Offline
Пол: 
Сообщений: 190
Joom'листка
|
 |
« Ответ #77 : 14.02.2012, 11:00:05 » |
|
J 1.5.22 VM 1.1.8. Сделал все как в 37-39 постах. Работает Спасибо! в Joomla 1.5.25+VirtueMart1.1.9 все также работает отлично! Спасибо всем, кто помог найти верное решение!
|
|
|
|
|
Записан
|
|
|
|
Romaha
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 38
|
 |
« Ответ #78 : 26.04.2012, 23:34:58 » |
|
Я тоже сделал как в постах 37-39 с поправкой на 69. Не сразу но как-то заработало  . Вот теперь другая задача: как сделать возможным сортировку по наличию... Нагуглил "мануал": http://nrg-design.ru/forum/drugoe/sortirovka-po-nalichiyu-v-virtuemart.html Сделал точно как там написано, в результате и сайт и админка отвалились. Поковырял, кое-что поменял, методом тыка по-исправлял синтаксис. В результате право выбора "По наличию" стало возможным и в админке и в browse. Но при выборе сортировки по наличию, товаров нет вообще. Я так понимаю, скорее всего из базы не тянет инфу о наличии товаров. Подскажите пожалуйста, что где нужно добавить? Так-то я чайник в коде :-( Описываю свои действия: в admin.show_cfg.php после 805 строки вставил: <input name="conf_VM_BROWSE_ORDERBY_FIELDS[]" type="checkbox" value="product_in_stock" <?php if (in_array( 'product_in_stock', $VM_BROWSE_ORDERBY_FIELDS )) echo "checked=\"checked\""; ?> id="conf_VM_BROWSE_ORDERBY_FIELDS5" /> <label for="conf_VM_BROWSE_ORDERBY_FIELDS5"><?php echo $VM_LANG->_('PHPSHOP_PRODUCT_ORDER_DEFAULT_MODIFIED')?></label>
После 781 строки: <option value="product_list" <?php if (@VM_BROWSE_ORDERBY_FIELD == 'product_in_stock') echo "selected=\"selected\""; ?>><?php echo $VM_LANG->_('PHPSHOP_PRODUCT_ORDER_DEFAULT_MODIFIED')?></option>
В shop_browse_queries.php после 56 строки: case 'product_in_stock': $orderbyField = '`#__{vm}_product_in_stock`.`product_in_stock`'; break;
В browse_orderbyfields.tpl.php после 41 строки: // SORT BY IN_STOCK if( in_array( 'product_in_stock', $VM_BROWSE_ORDERBY_FIELDS)) { ?> <option value="product_in_stock" <?php echo $orderby=="product_in_stock" ? "selected=\"selected\"" : "";?>> <?php echo $VM_LANG->_('PHPSHOP_PRODUCT_ORDER_DEFAULT_MODIFIED_LBL')?></option> <?php }
И наконец в russian.php добавляю: 'PHPSHOP_PRODUCT_ORDER_DEFAULT_MODIFIED' => 'По наличию', 'PHPSHOP_PRODUCT_ORDER_DEFAULT_MODIFIED_LBL' => 'По наличию',
На всякий случай прикладываю все 4 файла. Joomla 1.5 Vm 1.1.3 Спасибо.
|
|
|
|
« Последнее редактирование: 27.04.2012, 00:10:57 от Romaha »
|
Записан
|
|
|
|
Romaha
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 38
|
 |
« Ответ #79 : 26.04.2012, 23:47:09 » |
|
И еще нашел косяк: когда в админке ставишь сортировку по умолчанию: "По наличию", сортировка не происходит, т.е. полностью игнорируется.
|
|
|
|
« Последнее редактирование: 27.04.2012, 14:36:31 от Romaha »
|
Записан
|
|
|
|
Romaha
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 38
|
 |
« Ответ #80 : 27.04.2012, 22:59:52 » |
|
Всетки наковырял решение. Делаете как в мануале по ссылке выше, но потом правите VirtueMart.cfg.php как написано здесь. roduct_list в БД. Тема отсутствует... Может подскажете как сделать?
|
|
|
|
|
Записан
|
|
|
|
Romaha
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 38
|
 |
« Ответ #81 : 28.04.2012, 14:43:28 » |
|
Пожалуйста, хотя бы "толкните в нужную сторону" ничего не получается.
|
|
|
|
|
Записан
|
|
|
|
rezon
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 29
|
 |
« Ответ #82 : 10.05.2012, 15:32:09 » |
|
решил вопрос в данном ниже варианте Я сделала проще. (у меня VM 1.1.8, на VM 1.1.4 тоже работает, другие версии не проверяла) Из языкового файла понимаем, что "товаров в наличии" это 'PHPSHOP_PRODUCT_FORM_IN_STOCK', изменяем значение на "На складе", идем в \components\com_virtuemart\themes\default\templates\common\availability.tpl.php, находим строки: elseif( ($product_in_stock >= 1 && CHECK_STOCK) ) { ?><span style="font-weight:bold;"> <?php echo $VM_LANG->_('PHPSHOP_PRODUCT_FORM_IN_STOCK')?> : </span><?php echo $product_in_stock ?> Теперь понятно, что количество выводит $product_in_stock, закомментировав ее, мы избавляемся от цифры наличия товаров на складе. elseif( ($product_in_stock >= 1 && CHECK_STOCK) ) { ?><span style="font-weight:bold;"> <?php echo $VM_LANG->_('PHPSHOP_PRODUCT_FORM_IN_STOCK')?> </span><?php // echo $product_in_stock ?> В языковом файле PHPSHOP_AVAILABILITY обозначаем как "Наличие:" В итоге получаем: Наличие: На складе. Либо Наличие: Этого товара нет в наличии (можно написать "под заказ", или кому как нравится) Способ наверно для блондинок, но меня полностью устраивает  Проблема....Подскажите как вывести эти данные в browse, код который использую для вывода этих данных в flypage не работает <?php if( $this->get_cfg( 'showAvailability' )) { echo $product_availability; } ?> Код моего browse_1<div class="browseProductContainer">
<h3 class="browseProductTitle"><a title="<?php echo $product_name ?>" href="<?php echo $product_flypage ?>"> <?php echo $product_name ?></a> </h3> <div class="browsePriceContainer"> <?php echo $product_price ?><br /> </div> <div class="browseProductImageContainer"> <script type="text/javascript">//<![CDATA[ document.write('<a href="javascript:void window.open(\'<?php echo $product_full_image ?>\', \'win2\', \'status=no,toolbar=no,scrollbars=yes,titlebar=no,menubar=no,resizable=yes,width=<?php echo $full_image_width ?>,height=<?php echo $full_image_height ?>,directories=no,location=no\');">'); document.write( '<?php echo ps_product::image_tag( $product_thumb_image, 'class="browseProductImage" border="0" title="'.$product_name.'" alt="'.$product_name .'"' )?></a>' ); //]]> </script> <noscript> <a href="<?php echo $product_full_image ?>" target="_blank" title="<?php echo $product_name ?>"> <?php echo ps_product::image_tag( $product_thumb_image, 'class="browseProductImage" border="0" title="'.$product_name.'" alt="'.$product_name .'"' )?> </a> <?php echo $product_quantaty ?>
</noscript> <br/> <br/>
</div> <div class="browseRatingContainer"> <?php echo $product_rating ?> </div> <div class="browseProductDescription"> <div style="margin: 15px 0 5px;"><?php echo $product_s_desc ?> </div> <a class="readon" href="<?php echo $product_flypage ?>" title="<?php echo $product_details ?>"> <?php echo $product_details ?>...</a> </div>
<br />
<div class="browseAddToCartContainer">
<?php echo $form_addtocart ?>
</div><br/>
</div>
|
|
|
|
|
Записан
|
|
|
|
rezon
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 29
|
 |
« Ответ #83 : 12.05.2012, 14:23:44 » |
|
UP подскажите как сделать В наличии Нет в наличии
|
|
|
|
|
Записан
|
|
|
|
Romaha
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 38
|
 |
« Ответ #84 : 12.05.2012, 14:48:48 » |
|
UP подскажите как сделать В наличии Нет в наличии
Делай как в постах 37-39 с поправкой на 69-й пост этой темы
|
|
|
|
|
Записан
|
|
|
|
|