X-Cart: shopping cart software

X-Cart forums (https://forum.x-cart.com/index.php)
-   Dev Questions (https://forum.x-cart.com/forumdisplay.php?f=20)
-   -   How to display the price for products in the recommends list (https://forum.x-cart.com/showthread.php?t=7475)

shwekhaw 12-12-2004 12:13 AM

Hi BCSE:
I tried your codes in x-cart 4.0.7. I can see the price next to recommended product names but the price does not match to the product. It seems to me that prices are randomly listed next to product.
PHP codes are beyond my knowledge. Any chance you can fix it for 4.0.7?

Thanks.
S-H-W-E-K-H-A-W

BCSE 12-14-2004 11:54 AM

I just tested the above code in 4.0.4 and it's showing the right price. Perhaps you inserted the php code in the wrong place?

For 4.0.4 I inserted it into recommends.php (in x-cart directory) after this code:
Code:

if ($config["Modules"]["select_recommends_list_randomly"] == "Y" && count($query_ids)>0) {
    $query = "SELECT $sql_tbl[products].*, $lng_fields FROM $sql_tbl[products] LEFT JOIN $sql_tbl[products_lng] ON $sql_tbl[products].productid=$sql_tbl[products_lng].productid $lng_condition WHERE $sql_tbl[products].productid IN ('".join("','",$query_ids)."')";


See if that helps!

Carrie

shwekhaw 12-14-2004 01:09 PM

I tried again and still not working.
Here is code after edited.

Code:

{* $Id: recommends.tpl,v 1.4 2004/05/28 12:21:12 max Exp $ *}
{if $recommends}
{capture name=recommends}
{section name=num loop=$recommends}
<LI>
<SPAN class="ItemsList">{$recommends[num].product}
{************* PRICE NEXT TO LIST ******}
<font class=ProductPrice>{include file="currency.tpl" value=$recommends_prices[num].price}</font><font class=MarketPrice>{include file="customer/main/alter_currency_value.tpl" alter_currency_value=$recommends_prices[num].price}
{**************************************}
</SPAN>
</LI>
{/section}
{/capture}
{include file="dialog.tpl" title=$lng.lbl_recommends content=$smarty.capture.recommends extra="width=100%"}
{/if}


Parts from recommend.php
Code:

if ($config["Modules"]["select_recommends_list_randomly"] == "Y" && count($query_ids)>0) {


    $query = "SELECT $sql_tbl[products].*, $lng_fields FROM $sql_tbl[products] LEFT JOIN $sql_tbl[products_lng] ON $sql_tbl[products].productid=$sql_tbl[products_lng].productid $lng_condition WHERE $sql_tbl[products].productid IN ('".join("','",$query_ids)."')";
$recommends_prices = func_query("select * from $sql_tbl[pricing] where quantity='1' and productid in (".join(",",$query_ids).")");
    $smarty->assign("recommends_prices",$recommends_prices);

}
else
    $query = "SELECT DISTINCT sp2.productid, $sql_tbl[products].*, $lng_fields FROM $sql_tbl[stats_customers_products] as sp1, $sql_tbl[stats_customers_products] AS sp2, $sql_tbl[products], $sql_tbl[products_categories], $sql_tbl[categories] LEFT JOIN $sql_tbl[products_lng] ON $sql_tbl[products].productid=$sql_tbl[products_lng].productid $lng_condition WHERE sp1.productid='$productid' AND sp1.login=sp2.login AND sp2.productid!='$productid' AND $sql_tbl[products].productid=sp2.productid AND $sql_tbl[products].forsale='Y' AND $sql_tbl[products].productid = $sql_tbl[products_categories].productid AND $sql_tbl[products_categories].main = 'Y' AND $sql_tbl[categories].categoryid = $sql_tbl[products_categories].categoryid AND $sql_tbl[categories].membership IN ('".@$user_account['membership']."','') ".$avail_condition." ORDER BY $sql_tbl[products].product LIMIT ".$config["Modules"]["number_of_recommends"];

$recommends = func_query($query);
$smarty->assign("recommends",$recommends);
?>


I am assuming that you add the code within if statement.
The error is incorrect pricing shows up next to recommended product.

Under module options,
Select recommended products randomly: checked
Number of products to be displayed : 10

CC 12-25-2004 07:28 AM

Worked for me in 4.0.9 Gold.

Nice one Carrie! :wink:

shishapipe 01-06-2005 03:15 AM

This worked for me on 4.0.9, here is the code.
/skin1/modules/Recommended_Products/recommends.tpl
Code:

{* $Id: recommends.tpl,v 1.4 2004/05/28 12:21:12 max Exp $ *}
{if $recommends}
{capture name=recommends}
{section name=num loop=$recommends}
<LI>
<font class=ProductPrice>{include file="currency.tpl" value=$recommends_prices[num].price}</font>
<font class=MarketPrice>{include file="customer/main/alter_currency_value.tpl" alter_currency_value=$recommends_prices[num].price}</font>
<span class="ItemsList">{$recommends[num].product}</SPAN>
</LI>
{/section}
{/capture}
{include file="dialog.tpl" title=$lng.lbl_recommends content=$smarty.capture.recommends extra="width=100%"}
{/if}


The above is the full code in recommends.tpl

shishapipe 01-06-2005 03:22 AM

And the last bit of the code in the your_shop_cart_root/recommends.php


Code:

if ($config["Modules"]["select_recommends_list_randomly"] == "Y" && count($query_ids)>0) {
    $query = "SELECT $sql_tbl[products].*, $lng_fields FROM $sql_tbl[products] LEFT JOIN $sql_tbl[products_lng] ON $sql_tbl[products].productid=$sql_tbl[products_lng].productid $lng_condition WHERE $sql_tbl[products].productid IN ('".join("','",$query_ids)."')";

# Add extra code for Prices to Show

$recommends_prices = func_query("select * from $sql_tbl[pricing] where quantity='1' and productid in (".join(",",$query_ids).")");
    $smarty->assign("recommends_prices",$recommends_prices);
$query = "SELECT $sql_tbl[products].*, $lng_fields FROM $sql_tbl[products] LEFT JOIN $sql_tbl[products_lng] ON $sql_tbl[products].productid=$sql_tbl[products_lng].productid $lng_condition WHERE $sql_tbl[products].forsale='Y' ".$avail_condition." AND $sql_tbl[products].productid IN (".join(",",$query_ids).")";

#End Add extra code for Prices to Show

}

else
    $query = "SELECT DISTINCT sp2.productid, $sql_tbl[products].*, $lng_fields FROM $sql_tbl[stats_customers_products] as sp1, $sql_tbl[stats_customers_products] AS sp2, $sql_tbl[products], $sql_tbl[products_categories], $sql_tbl[categories] LEFT JOIN $sql_tbl[products_lng] ON $sql_tbl[products].productid=$sql_tbl[products_lng].productid $lng_condition WHERE sp1.productid='$productid' AND sp1.login=sp2.login AND sp2.productid!='$productid' AND $sql_tbl[products].productid=sp2.productid AND $sql_tbl[products].forsale='Y' AND $sql_tbl[products].productid = $sql_tbl[products_categories].productid AND $sql_tbl[products_categories].main = 'Y' AND $sql_tbl[categories].categoryid = $sql_tbl[products_categories].categoryid AND $sql_tbl[categories].membership IN ('".@$user_account['membership']."','') ".$avail_condition." ORDER BY $sql_tbl[products].product LIMIT ".$config["Modules"]["number_of_recommends"];

$recommends = func_query($query);
$smarty->assign("recommends",$recommends);
?>


I added the extra lines in the code which you can see is marked with:
# Add extra code for Prices to Show
And ends with
# End Add extra code for Prices to Show

enge919 01-23-2005 11:30 PM

How about a mod to display the prices of the product options in the order_info.tpl (in the orders view in the xcart admin)...4.0.x??

MOC 02-14-2005 08:58 PM

What do i have to change in 3.5.14

jvleigh 06-15-2006 05:57 AM

I've tried this MOD and have to agree with other posters that it randomizes the prices so that they do not match the products.

Has anybody had success getting the prices to match?

Thanks.


All times are GMT -8. The time now is 03:05 AM.

Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.