|
aleks_yug
|
 |
« : 28.10.2009, 20:56:05 » |
|
Добрый вечер. Уважаемый beagler, есть ли возможность вывода в корзине свойств товара (если они вбиты, конечно) на странице категории. Крайне удобная вещь, особенно когда товар не нуждается в подробном описании, но имеет разные свойства (к примеру -цвет или т.п.). В VM 1.0.X эта проблема решалась лишь незначительной правкой shop.browse и установкой заглушки в browse_X. В VM 1.1.X что-то пока не разберусь. Если есть возможность, подскажите пожалуйста, куда копать? Заранее спасибо!
|
|
|
|
|
Записан
|
|
|
|
| |
|
morph
|
 |
« Ответ #1 : 29.10.2009, 05:52:26 » |
|
отвечу чуть за beagler если не против  administrator/components/com_virtuemart/html/shop.browse.php подключаем класс атрибутов require_once(CLASSPATH . 'ps_product_attribute.php' ); //This two lines have been added $ps_product_attribute = new ps_product_attribute; //This two lines have been added потом коментируем в форме корзины чтобы показывалось на странице категорий && !ps_product::product_has_attributes( $db_browse->f('product_id'), true ) идем в components/com_virtuemart/themes/default/templates/browse/includes/addtocart_form.tpl.php <?php echo $ps_product_attribute->list_advanced_attribute($product_id,$product_id); ?><br /> посути должно вывести список атрибутов. ну или list($html,$children) = $ps_product_attribute->list_attribute( ( $product_parent_id > 0 ) ? $product_parent_id : $product_id ); echo $html; не проверял но логика одна. P.S. from BeaglerПредпочтительней первый вариант. list($html,$children) иногда не срабатывает - недает положить товар в корзину.
|
|
|
|
« Последнее редактирование: 23.03.2011, 22:38:51 от beagler »
|
Записан
|
|
|
|
|
aleks_yug
|
 |
« Ответ #2 : 29.10.2009, 12:42:32 » |
|
Добрый день. Morph, огромное СПАСИБО! это +! (надеюсь beagler не против). Как сказал бы товарищ Ленин - очень нужная и своевременная книга! Все мнгновенно заработало. самое интересное, что ковырялся тут же, но почему-то сразу не допер (пардон).
|
|
|
|
|
Записан
|
|
|
|
yuxim
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Пол: 
Сообщений: 26
|
 |
« Ответ #3 : 29.12.2009, 01:04:02 » |
|
Не совсем все понятно. Мне необходимо реализовать вот такой функционал, как указано на картинке ниже. Могли бы помочь?
|
|
|
|
|
Записан
|
|
|
|
|
aleks_yug
|
 |
« Ответ #4 : 29.12.2009, 21:58:08 » |
|
yuxim, скажите, какую версию VM используете - ответы будут с учетом этого момента. Важно!
|
|
|
|
|
Записан
|
|
|
|
yuxim
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Пол: 
Сообщений: 26
|
 |
« Ответ #5 : 29.12.2009, 22:12:13 » |
|
VM версии 1.1.4
|
|
|
|
|
Записан
|
|
|
|
|
aleks_yug
|
 |
« Ответ #6 : 29.12.2009, 22:34:36 » |
|
В категории товаров свойства тоже должны отображаться, или только на флаере?
|
|
|
|
|
Записан
|
|
|
|
yuxim
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Пол: 
Сообщений: 26
|
 |
« Ответ #7 : 29.12.2009, 22:44:00 » |
|
только в кратком описании товара (как на скрине) и, если можно, в карточке товара.
|
|
|
|
|
Записан
|
|
|
|
|
aleks_yug
|
 |
« Ответ #8 : 29.12.2009, 22:46:56 » |
|
Понял. Ждем минут 15
|
|
|
|
|
Записан
|
|
|
|
|
aleks_yug
|
 |
« Ответ #9 : 29.12.2009, 23:07:57 » |
|
Вот, то. что я делал у себя по подсказке Morpha. После этого на странице категории тоже будет отображаться выпадающее меню с различными свойствами товара, забитыми в админке: ========================================================== В administrator/components/com_virtuemart/html/shop.browse.php найти блок, начинающийся с комментария: // Add-to-Cart Button и заменить его содержимое на следующее:
// Add-to-Cart Button if (USE_AS_CATALOGUE != '1' && $product_price != "" && $tpl->get_cfg( 'showAddtocartButtonOnProductList' ) && !stristr( $product_price, $VM_LANG->_('PHPSHOP_PRODUCT_CALL') ) //&& !ps_product::product_has_attributes( $db_browse->f('product_id'), true ) //Не показывать корзину ) {
$tpl->set( 'i', $i ); $tpl->set( 'product_id', $db_browse->f('product_id') ); $tpl->set( 'product_in_stock', $db_browse->f('product_in_stock') ); $tpl->set( 'ps_product_attribute', $ps_product_attribute ); $tpl->set( "product_availability", $product_availability ); $tpl->set( "product_availability_data", $product_availability_data ); $products[$i]['form_addtocart'] = $tpl->fetch( 'browse/includes/addtocart_form.tpl.php' ); $products[$i]['has_addtocart'] = true; } else { $products[$i]['form_addtocart'] = ''; $products[$i]['has_addtocart'] = false; }
========================================================= ========================================================= В файле: components/com_virtuemart/themes/default/templates/browse/includes/addtocart_form.tpl.php добавить перед строкой: <?php echo $ps_product_attribute->show_quantity_box($product_id,$product_id); ?><br /> То, что уже расписал Morph: <?php echo $ps_product_attribute->list_advanced_attribute($product_id,$product_id); ?><br /> ========================================================= Должно заработать (у меня во всяком случае - без проблем!) Содержимое, кот. нужно, забиваем в админке, в свойствах товаров.
|
|
|
|
|
Записан
|
|
|
|
yuxim
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Пол: 
Сообщений: 26
|
 |
« Ответ #10 : 29.12.2009, 23:10:37 » |
|
Спасибо за помощь, сейчас буду пробовать. Позже отпишусь об успехах
|
|
|
|
|
Записан
|
|
|
|
yuxim
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Пол: 
Сообщений: 26
|
 |
« Ответ #11 : 29.12.2009, 23:57:42 » |
|
Может я что-то не так понял, но ничего не изменилось, хотя продел все вышесказанное. В кратком описании свойства не отображаются. Разъясните чайнику
|
|
|
|
|
Записан
|
|
|
|
|
aleks_yug
|
 |
« Ответ #12 : 30.12.2009, 00:08:19 » |
|
В админке, в товаре свойства указаны - разные размеры или цвет с разной ценой, к примеру. На флаере товара список свойсв отображается?
|
|
|
|
« Последнее редактирование: 30.12.2009, 00:14:30 от aleks_yug »
|
Записан
|
|
|
|
yuxim
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Пол: 
Сообщений: 26
|
 |
« Ответ #13 : 30.12.2009, 00:25:32 » |
|
Провел несколько экспериментов с шаблонами все стало на свои места! Появилось выпадающее меню со списком свойств! Если я правильно понял, то так и должно быть? Но эффект супер, мои потребности удовлетворяет. Спасибо еще раз!
|
|
|
|
|
Записан
|
|
|
|
|
aleks_yug
|
 |
« Ответ #14 : 30.12.2009, 00:29:29 » |
|
Ну, слава богу!
|
|
|
|
|
Записан
|
|
|
|
yuxim
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Пол: 
Сообщений: 26
|
 |
« Ответ #15 : 30.12.2009, 00:33:09 » |
|
Если позволите, то вот еще вопрос. Как убрать эту уродскую рамку и заливку в ней? Т.Е. выбор свойства, отображение стоимости и кнопку "Купить" нужно оставить, а все остальное удалить.
|
|
|
|
|
Записан
|
|
|
|
yuxim
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Пол: 
Сообщений: 26
|
 |
« Ответ #16 : 30.12.2009, 00:34:54 » |
|
Или точнее в каком файле это редактировать, не подскажете? А там уже сам пороюсь...
|
|
|
|
|
Записан
|
|
|
|
|
aleks_yug
|
 |
« Ответ #17 : 30.12.2009, 00:46:47 » |
|
файл template_css.css Вашего шаблона, класс addtocard. Вообще внешний вид настраивается в CSS (в основном...)
|
|
|
|
|
Записан
|
|
|
|
yeisk
Захожу иногда

Репутация: +1/-0
Offline
Сообщений: 23
|
 |
« Ответ #18 : 20.02.2010, 21:37:07 » |
|
не работает этот вариант. Возможно еще что-то нужно сделать?
|
|
|
|
|
Записан
|
|
|
|
|
morph
|
 |
« Ответ #19 : 21.02.2010, 05:15:12 » |
|
не работает этот вариант. Возможно еще что-то нужно сделать?
не нормальный ответ да? что не работает как делали?де ссылка на сайт?какие ошибки?
|
|
|
|
|
Записан
|
|
|
|
yeisk
Захожу иногда

Репутация: +1/-0
Offline
Сообщений: 23
|
 |
« Ответ #20 : 21.02.2010, 12:18:00 » |
|
Вот, то. что я делал у себя по подсказке Morpha. После этого на странице категории тоже будет отображаться выпадающее меню с различными свойствами товара, забитыми в админке: ========================================================== В administrator/components/com_virtuemart/html/shop.browse.php найти блок, начинающийся с комментария: // Add-to-Cart Button и заменить его содержимое на следующее:
// Add-to-Cart Button if (USE_AS_CATALOGUE != '1' && $product_price != "" && $tpl->get_cfg( 'showAddtocartButtonOnProductList' ) && !stristr( $product_price, $VM_LANG->_('PHPSHOP_PRODUCT_CALL') ) //&& !ps_product::product_has_attributes( $db_browse->f('product_id'), true ) //Не показывать корзину ) {
$tpl->set( 'i', $i ); $tpl->set( 'product_id', $db_browse->f('product_id') ); $tpl->set( 'product_in_stock', $db_browse->f('product_in_stock') ); $tpl->set( 'ps_product_attribute', $ps_product_attribute ); $tpl->set( "product_availability", $product_availability ); $tpl->set( "product_availability_data", $product_availability_data ); $products[$i]['form_addtocart'] = $tpl->fetch( 'browse/includes/addtocart_form.tpl.php' ); $products[$i]['has_addtocart'] = true; } else { $products[$i]['form_addtocart'] = ''; $products[$i]['has_addtocart'] = false; }
========================================================= ========================================================= В файле: components/com_virtuemart/themes/default/templates/browse/includes/addtocart_form.tpl.php добавить перед строкой: <?php echo $ps_product_attribute->show_quantity_box($product_id,$product_id); ?><br /> То, что уже расписал Morph: <?php echo $ps_product_attribute->list_advanced_attribute($product_id,$product_id); ?><br /> ========================================================= Должно заработать (у меня во всяком случае - без проблем!) Содержимое, кот. нужно, забиваем в админке, в свойствах товаров.
Вот это делали. Не помогло. Да, после некоторых манипуляций с шаблоном свойства товаров появились, но все сразу, что не очень нужно.
|
|
|
|
|
Записан
|
|
|
|
numen
Осваиваюсь на форуме
 
Репутация: +3/-0
Offline
Пол: 
Сообщений: 66
|
 |
« Ответ #21 : 04.03.2010, 21:28:49 » |
|
Кто нибудь пробовал выводить в категорию товаров корзину с зависимыми товарами? Если кто знает, подскажите, пожалуйста... ! Третьи сутки ковыряюсь... Пробовал предложенный выше способ, принудительно добавлял корзину - товар не добавляется, появляется сообщение "Совет: Для того, чтобы добавить этот товар в Вашу корзину Вы должны выбрать свойства товара на странице с его описанием."... Подскажите где копать, может где то убрать проверку чтоб не вылазило это сообщение?
|
|
|
|
|
Записан
|
|
|
|
alex_v_v
Захожу иногда

Репутация: +0/-0
Offline
Сообщений: 7
|
 |
« Ответ #22 : 07.03.2010, 15:42:10 » |
|
... ну или list($html,$children) = $ps_product_attribute->list_attribute( ( $product_parent_id > 0 ) ? $product_parent_id : $product_id ); echo $html;
не проверял но логика одна.
После добавления этого фрагмента выводится форма добавления зависимых товаров в корзину. Что, в принципе, и нужно. Но, как отредактировать вывод этой формы? К примеру, чтоб выводилось: 1 кг -- 3 руб. 2 кг -- 5 руб. или 1кг -- 3 руб. -- купить 2кг -- 5 руб. -- купить
|
|
|
|
|
Записан
|
|
|
|
numen
Осваиваюсь на форуме
 
Репутация: +3/-0
Offline
Пол: 
Сообщений: 66
|
 |
« Ответ #23 : 10.03.2010, 17:54:39 » |
|
Но, как отредактировать вывод этой формы? К примеру, чтоб выводилось: 1 кг -- 3 руб. 2 кг -- 5 руб.
или 1кг -- 3 руб. -- купить 2кг -- 5 руб. -- купить
Это редактируется в файле: addtocart_list_single.tpl.php (в папке www\site\components\com_virtuemart\themes\default\templates\product_details\includes\). У меня получилось сделать даже с дополнительным полем, напротив каждого зависимого товара... (ссылку позже выложу)
|
|
|
|
« Последнее редактирование: 10.03.2010, 21:56:55 от numen »
|
Записан
|
|
|
|
alex_v_v
Захожу иногда

Репутация: +0/-0
Offline
Сообщений: 7
|
 |
« Ответ #24 : 10.03.2010, 20:44:35 » |
|
Это редактируется в файле: addtocart_advanced_attribute.tpl.php (в папке www\site\components\com_virtuemart\themes\default\templates\product_details\includes\). У меня получилось сделать даже с дополнительным полем, напротив каждого зависимого товара... (ссылку позже выложу)
Тогда может в файле addtocart_list_multi.tpl.php ? у меня в админке: товар -> ... -> Список стилей -> Кнопка "Добавить в корзину" для каждого зависимого товара Ждём ссылку 
|
|
|
|
|
Записан
|
|
|
|
numen
Осваиваюсь на форуме
 
Репутация: +3/-0
Offline
Пол: 
Сообщений: 66
|
 |
« Ответ #25 : 10.03.2010, 21:08:00 » |
|
Альфа версия тут - описание всех действий сделаю в отдельной теме... (радио боксы, к сожалению, пока не работают и сообщения появляются...)
|
|
|
|
|
Записан
|
|
|
|
|
skyscraper
|
 |
« Ответ #26 : 11.03.2010, 00:16:15 » |
|
numen расскажи как сделал, красиво получилось!
|
|
|
|
|
Записан
|
|
|
|
numen
Осваиваюсь на форуме
 
Репутация: +3/-0
Offline
Пол: 
Сообщений: 66
|
 |
« Ответ #27 : 11.03.2010, 00:24:11 » |
|
завтра напишу
|
|
|
|
|
Записан
|
|
|
|
|
skyscraper
|
 |
« Ответ #28 : 11.03.2010, 01:15:44 » |
|
numen если честно интересует больше как сделать чекбоксы с количеством... я пока остановился на этом
|
|
|
|
|
Записан
|
|
|
|
numen
Осваиваюсь на форуме
 
Репутация: +3/-0
Offline
Пол: 
Сообщений: 66
|
 |
« Ответ #29 : 11.03.2010, 12:05:16 » |
|
skyscraper, у нас все таки разные решения... ты делаешь в карточке товара через список свойств... а я через категорию с использованием зависимых товаров...
|
|
|
|
|
Записан
|
|
|
|
|