Try the Demo

Magento

eCommerce Software for Online Growth

Magento Forum

Our new hosted solution for small & emerging businesses
   
Can “Cross-Sells” block be moved/copied from checkout to Product Page? 
 
tjonnyc
Sr. Member
 
Total Posts:  111
Joined:  2009-04-07
 

I would like to show the “Cross-Sells” not only on the checkout process, but on the product page itself.

What’s neat about the Cross-Sells block is that it includes the “Add To Cart” button. Combine that with the “do not redirect customer to shopping cart” option, and you have a way to inobtrusively add accessories/add-ons/extended warranty to the shopping process.

The question is, how do I migrate the Cross-Sells block to the Product Page?

Image Attachments
cross-sells-on-product-page.jpg
 Signature 

"Good intentions are good for nothing - actions speak louder than words.”

 
Magento Community Magento Community
Magento Community
Magento Community
 
Kara Heinrichs
Guru
 
Avatar
Total Posts:  481
Joined:  2008-01-17
aa, mi, us
 

The related products concept already does what you’re describing on the product page.  Upsells also are displayed on the product page, while cross sells are displayed on the cart page.  Because cross sells are triggered by the cart contents, I’m not sure there’s a simple way to port them to the product page.  Do the native product page upsell/related product concepts not work for your purpose?

 Signature 

Founder and Principal at Brillig House, specializing in Magento consulting, training and theme design.

Check out mage-page.net for links to Magento blogs and current articles from around the web.

 
Magento Community Magento Community
Magento Community
Magento Community
 
tjonnyc
Sr. Member
 
Total Posts:  111
Joined:  2009-04-07
 
kara - 10 August 2009 03:50 PM

The related products concept already does what you’re describing on the product page.  Upsells also are displayed on the product page, while cross sells are displayed on the cart page.  Because cross sells are triggered by the cart contents, I’m not sure there’s a simple way to port them to the product page.  Do the native product page upsell/related product concepts not work for your purpose?

No, they don’t really work, since I want to either let customers add-to-cart the individual “related items” / “options” / “accessories”, OR have them show up “inline” with the product info, so they can be selected before the main “Add To Cart” button is clicked. Due to the specifics of my products (as well as the client base), making the customers jump from the content area to the sidebar (for accessories), then scroll down to the AddToCart button will present a usability issue. It should either be all-inline, or allow “on-the-spot” adding to cart for each optional item.

 Signature 

"Good intentions are good for nothing - actions speak louder than words.”

 
Magento Community Magento Community
Magento Community
Magento Community
 
jeissler
Jr. Member
 
Total Posts:  23
Joined:  2009-07-18
 

I would be interested to know if anyone figures this one out. Although related products and upsells work for some things I would like to have the one-stop function as well. I am working on a way to combine the best of both worlds, but am having a hard time. Please let me know if you find a way. I would love to have a solution. Thanks to all that are posting on the Mage forums!

 
Magento Community Magento Community
Magento Community
Magento Community
 
coder_tariq
Jr. Member
 
Total Posts:  3
Joined:  2008-03-08
 

i did similar job.  i removed cross sell from checkout page .. and added related product there…

 
Magento Community Magento Community
Magento Community
Magento Community
 
jeissler
Jr. Member
 
Total Posts:  23
Joined:  2009-07-18
 

Essentially what I want is to combine the function/format of the “upsells” and the “related products”. I like the grid format of “upsells”, but want the customer to be able to have a check-box to add the product to their cart like the “related products”. Maybe someone has an answer to this that I am not seeing.

I hacked the code together to make this happen, but it isn’t fully functional cross-browser. I will have to look at it closer when I get time, but please post if you can help or have a solution I am not aware of. Thanks.

 
Magento Community Magento Community
Magento Community
Magento Community
 
Ram Krishna
Jr. Member
 
Avatar
Total Posts:  1
Joined:  2009-04-09
 

Hi
You can do it very easily.
1- Create a new template named “crosssel.phtml” as>> yourTemplateDir/catalog/product/list/crosssel.phtml Then paste following code in that:
***********************
<h4><?php echo $this->__('Based on your selection, you may be interested in the following items:') ?></h4>
<ul class="generic-product-list">
<?php foreach ($this->getItems() as $_item): ?>
<li>
<a href="<?php echo $_item->getProductUrl() ?>"><img src="<?php echo $this->helper('catalog/image')->init($_item, 'thumbnail')->resize(75); ?>” width="75" alt="<?php echo $this->htmlEscape($_item->getName()) ?>” class="product-image" /></a>
<div class="product-shop">
<h5><a href="<?php echo $_item->getProductUrl() ?>"><?php echo $this->htmlEscape($_item->getName()) ?></a></h5>
<?php echo $this->getPriceHtml($_item, true) ?>
<button class="form-button" onclick="setLocation(’<?php echo $this->getAddToCartUrl($_item) ?>’)” type="button"><span><?php echo $this->__('Add to Cart') ?></span></button><br/>
<?php if ($this->helper('wishlist')->isAllow()) : ?>
<small><a href="<?php echo $this->getAddToWishlistUrl($_item) ?>” class="link-cart"><?php echo $this->__('Add to Wishlist') ?></a></small>
<?php endif; ?>
<?php if($_compareUrl=$this->getAddToCompareUrl($_item)): ?><br/>
<small><a href="<?php echo $_compareUrl ?>"><?php echo $this->__('Add to Compare') ?></a></small>
<?php endif; ?>
</div>
</li>
<?php endforeach; ?>
</ul>
******************
2- Go to in catalog/product/view.phtml, paste following code where you want to show crosssell:
******************
<?php echo $this->getChildHtml('crosssell_products') ?>
******************
3- Now finally open yourLayoutDir/catalog.xml and findout <catalog_product_view> section in it and finally add following block uder upsell block:
******************
<block type="catalog/product_list_crosssell" name="product.info.crosssell" as="crosssell_products" template="catalog/product/list/crosssell.phtml"/>
******************
Enjoy

 
Magento Community Magento Community
Magento Community
Magento Community
 
yournamehere
Jr. Member
 
Total Posts:  6
Joined:  2010-12-29
 
Ram Krishna - 19 September 2009 07:55 AM

Hi
You can do it very easily.
1- Create a new template named “crosssel.phtml” as>> yourTemplateDir/catalog/product/list/crosssel.phtml Then paste following code in that:
***********************
<h4><?php echo $this->__('Based on your selection, you may be interested in the following items:') ?></h4>
<ul class="generic-product-list">
<?php foreach ($this->getItems() as $_item): ?>
<li>
<a href="<?php echo $_item->getProductUrl() ?>"><img src="<?php echo $this->helper('catalog/image')->init($_item, 'thumbnail')->resize(75); ?>” width="75" alt="<?php echo $this->htmlEscape($_item->getName()) ?>” class="product-image" /></a>
<div class="product-shop">
<h5><a href="<?php echo $_item->getProductUrl() ?>"><?php echo $this->htmlEscape($_item->getName()) ?></a></h5>
<?php echo $this->getPriceHtml($_item, true) ?>
<button class="form-button" onclick="setLocation(’<?php echo $this->getAddToCartUrl($_item) ?>’)” type="button"><span><?php echo $this->__('Add to Cart') ?></span></button><br/>
<?php if ($this->helper('wishlist')->isAllow()) : ?>
<small><a href="<?php echo $this->getAddToWishlistUrl($_item) ?>” class="link-cart"><?php echo $this->__('Add to Wishlist') ?></a></small>
<?php endif; ?>
<?php if($_compareUrl=$this->getAddToCompareUrl($_item)): ?><br/>
<small><a href="<?php echo $_compareUrl ?>"><?php echo $this->__('Add to Compare') ?></a></small>
<?php endif; ?>
</div>
</li>
<?php endforeach; ?>
</ul>
******************
2- Go to in catalog/product/view.phtml, paste following code where you want to show crosssell:
******************
<?php echo $this->getChildHtml('crosssell_products') ?>
******************
3- Now finally open yourLayoutDir/catalog.xml and findout <catalog_product_view> section in it and finally add following block uder upsell block:
******************
<block type="catalog/product_list_crosssell" name="product.info.crosssell" as="crosssell_products" template="catalog/product/list/crosssell.phtml"/>
******************
Enjoy

Works great, amazing - thank you! One problem though; add to cart doesn’t seem to do anything - whereas wishlist/compare are ok. Any suggestions? Thanks again.

 
Magento Community Magento Community
Magento Community
Magento Community
Magento Community
Magento Community
    Back to top
 
© Copyright 2012 Magento Inc.
Privacy Policy|Terms of Service
Magento Community Count
697453 users|1506 users currently online|496748 forum posts