PDA

Zobacz pełną wersję : Jak wyświetlić koszyk na poziomie kategorii



Marfish
18-07-2012, 12:47
Z VM pracuję już od 2 lat mniej więcej. Wcześniej miałem wersję 1.1.18. Teraz zainstalowałem sobie nową joomla 2.5 i nowy VM 2.0.8. Przyznam, że jestem pozytywnie zaskoczony zmianami, ale...
No właśnie zawsze musi być to "ale"
Nie potrafię ustawić w konfiguracji aby koszyk wyświerlał się na stronie kategorii produktów. Nie każdy klient potrzebuje wchodzić na poziom karty produktu, wielu zna towar i wystarczy im jeśli oglądając przegląd towarów w kategorii będą mieli możliwość dodania do koszyka.
Ponadto przy dodawaniu do koszyka pojawia się takie "wściekłe" okienko informacyjne, które chciałbym zlikwidować.
Czy ktoś mógłby podpowiedzieć jak rozwiązać te moje dwa problemy?
mój sklep: http://sklep.marfish.pl

bogdanbojarski
18-07-2012, 18:01
Do pliku szablonu /component/com_virtuemart/views/cataegory/tmpl/default.php gdzieś poniżej // Show Products ?>
Wstaw to:



<form method="post" class="product" action="index.php" id="addtocartproduct<?php echo $product->virtuemart_product_id ?>">
<div class="addtocart-bar">

<?php // Display the quantity box ?>
<!-- <label for="quantity<?php echo $product->virtuemart_product_id;?>" class="quantity_box"><?php echo JText::_('COM_VIRTUEMART_CART_QUANTITY'); ?>: </label> -->
<span class="quantity-box">
<input type="text" class="quantity-input" name="quantity[]" value="1" />
</span>
<span class="quantity-controls">
<input type="button" class="quantity-controls quantity-plus" />
<input type="button" class="quantity-controls quantity-minus" />
</span>
<?php // Display the quantity box END ?>

<?php // Add the button
$button_lbl = JText::_('COM_VIRTUEMART_CART_ADD_TO');
$button_cls = ''; //$button_cls = 'addtocart_button';
if (VmConfig::get('check_stock') == '1' && !$product->product_in_stock) {
$button_lbl = JText::_('COM_VIRTUEMART_CART_NOTIFY');
$button_cls = 'notify-button';
} ?>

<?php // Display the add to cart button ?>
<span class="addtocart-button">
<input type="submit" name="addtocart" class="addtocart-button" value="<?php echo $button_lbl ?>" title="<?php echo $button_lbl ?>" />
</span>

<div class="clear"></div>
</div>

<?php // Display the add to cart button END ?>
<input type="hidden" class="pname" value="<?php echo $product->product_name ?>">
<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 /** @todo Handle the manufacturer view */ ?>
<input type="hidden" name="virtuemart_manufacturer_id" value="<?php echo $product->virtuemart_manufacturer_id ?>" />
<input type="hidden" name="virtuemart_category_id[]" value="<?php echo $product->virtuemart_category_id ?>" />
</form>


Sprawdziłem, działa. Źródło: http://forum.virtuemart.net/index.php?topic=90961.15
Zwróć tam uwagę na divy, żeby dobrze wstawić.

Marfish
18-07-2012, 21:09
Koszyk się pojawił, ba nawet działa. Wielkie dzięki za podpowiedź. Jest tylko mały problem otóż wszystko na stronach kategorii się rozjechało i nie wiadomo, który koszyk do którego produktu jest przypisany. Czy to chodzi o te divy? Nie mam o nich pojęcia. Jak poprawić ten układ?

- - - Updated - - -

Zmieniłem miejsce, w którym wstawiłem ten kod i sprawa się prawie poprawiła, ale prawie czyni wielką różnicę. Mianowicie przycisk koszyka w niektórych kategoriach nakłada mi się z przyciskiem "szczegóły". Gdzie dokładnie wstawić ten kod?

- - - Updated - - -

No ok, pokombinowałem i układ już jest do przyjęcia. @ bogdanbojarski dziękuję Ci