特价商品页加入排序选择

Zen Cart的安装、设置、升级讨论和使用技巧交流

版主: shaning

特价商品页加入排序选择

帖子liufeng » 2011-03-07 10:15

请教个问题,我想在特价商品页加入新进商品页那样的排序下拉框,我在tpl_specials_default.php合适位置加入
<?php
require($template->get_template_dir('/tpl_modules_listing_display_order.php',DIR_WS_TEMPLATE, $current_page_base,'templates'). '/tpl_modules_listing_display_order.php');
?>

现在在特价商品页显示下拉框了,可是我点击排序没有变化,就是没效果,地址栏是传递参数的,不知道为什么,哪位高人帮忙看下,谢了!
liufeng
 
帖子: 4
注册: 2011-01-03 13:07
QQ 帐号: 782363589

Re: 特价商品页加入排序选择

帖子ZC-技术18 » 2011-03-09 10:11

在新进商品里调用该文件,选择排序会传递参数,参数传进查询语句sql里面了,但是特价商品里面的sql没有接收该参数的变量,所以要排序有变化的话,要修改特价商品里面的sql语句。
这是新进商品的查询语句。
$products_new_query_raw = "SELECT p.products_id, p.products_type, pd.products_name, p.products_image, p.products_price,
p.products_tax_class_id, p.products_date_added, m.manufacturers_name, p.products_model,
p.products_quantity, p.products_weight, p.product_is_call,
p.product_is_always_free_shipping, p.products_qty_box_status,
p.master_categories_id
FROM " . TABLE_PRODUCTS . " p
LEFT JOIN " . TABLE_MANUFACTURERS . " m
ON (p.manufacturers_id = m.manufacturers_id), " . TABLE_PRODUCTS_DESCRIPTION . " pd
WHERE p.products_status = 1
AND p.products_id = pd.products_id
AND pd.language_id = :languageID " . $display_limit . $order_by;

这是特价商品的查询语句。
$specials_query_raw = "SELECT p.products_id, p.products_image, pd.products_name, pd.products_description,
p.master_categories_id
FROM (" . TABLE_PRODUCTS . " p
LEFT JOIN " . TABLE_SPECIALS . " s on p.products_id = s.products_id
LEFT JOIN " . TABLE_PRODUCTS_DESCRIPTION . " pd on p.products_id = pd.products_id )
WHERE p.products_id = s.products_id and p.products_id = pd.products_id and p.products_status = '1'
AND s.status = 1
AND pd.language_id = :languagesID
ORDER BY s.specials_date_added DESC";
对比一下,最后一句改为 " . $display_limit . $order_by;试一下
在includes/modules/pages/specials/main_template_vars.php 文件
希望你能成功。
ZC-技术18
普通会员
普通会员
 
帖子: 49
注册: 2010-09-01 13:10

Re: 特价商品页加入排序选择

帖子asus » 2011-03-09 11:12

ZC-技术18 写道:在新进商品里调用该文件,选择排序会传递参数,参数传进查询语句sql里面了,但是特价商品里面的sql没有接收该参数的变量,所以要排序有变化的话,要修改特价商品里面的sql语句。
这是新进商品的查询语句。
$products_new_query_raw = "SELECT p.products_id, p.products_type, pd.products_name, p.products_image, p.products_price,
p.products_tax_class_id, p.products_date_added, m.manufacturers_name, p.products_model,
p.products_quantity, p.products_weight, p.product_is_call,
p.product_is_always_free_shipping, p.products_qty_box_status,
p.master_categories_id
FROM " . TABLE_PRODUCTS . " p
LEFT JOIN " . TABLE_MANUFACTURERS . " m
ON (p.manufacturers_id = m.manufacturers_id), " . TABLE_PRODUCTS_DESCRIPTION . " pd
WHERE p.products_status = 1
AND p.products_id = pd.products_id
AND pd.language_id = :languageID " . $display_limit . $order_by;

这是特价商品的查询语句。
$specials_query_raw = "SELECT p.products_id, p.products_image, pd.products_name, pd.products_description,
p.master_categories_id
FROM (" . TABLE_PRODUCTS . " p
LEFT JOIN " . TABLE_SPECIALS . " s on p.products_id = s.products_id
LEFT JOIN " . TABLE_PRODUCTS_DESCRIPTION . " pd on p.products_id = pd.products_id )
WHERE p.products_id = s.products_id and p.products_id = pd.products_id and p.products_status = '1'
AND s.status = 1
AND pd.language_id = :languagesID
ORDER BY s.specials_date_added DESC";
对比一下,最后一句改为 " . $display_limit . $order_by;试一下
在includes/modules/pages/specials/main_template_vars.php 文件
希望你能成功。



谢谢你的解答,虽然这样是不行的,但是思路是对的,还要在改点东西,我已经解决了!Thank!
asus
新手上路
新手上路
 
帖子: 6
注册: 2011-03-07 16:18
QQ 帐号: 782363589


  • 相关话题
    回复总数
    阅读次数
    最新文章

回到 安装设置



在线用户

正在浏览此版面的用户:没有注册用户 和 3 位游客

cron