1

如何在xcart 4.4.2的产品列表中显示产品选项。在男士服装类别下,在衬衫中,我需要在衬衫列表本身上显示颜色、尺寸等选项。现在它在衬衫详细信息页面中。有人可以帮我吗请。

4

1 回答 1

0

你可以试试这个解决方案。这将显示条件中 array(246, 247) 中由类别 ID 指定的类别中每个产品的所有选项值。您应该将其替换为您自己的类别 ID(home.php?cat=XXX, XXX - 这是一个类别 ID)

products.php 的补丁

@@ -133,6 +133,14 @@

 }

+if (isset($cat) && in_array($cat, array(246, 247)) && isset($products) && !empty($active_modules['Product_Options'])) {
+    foreach ($products as $k => $v) {
+        if ('Y' == $v['is_product_options']) {
+            $products[$k]['options'] = func_get_product_classes($v['productid']);
+        }
+    }
+}
+
 $smarty->assign('cat_products',      isset($products) ? $products : array());
 $smarty->assign('navigation_script', "home.php?cat=$cat&sort=$sort&sort_direction=$sort_direction");
 ?>

皮肤补丁/common_files/customer/main/products_list.tpl

@@ -45,6 +45,10 @@

         <div class="descr">{$product.descr}</div>

+          {if $active_modules.Product_Options ne ""}
+            {include file="modules/Product_Options/show_options.tpl" product_options=$product.options}
+          {/if}
+
         {if $product.rating_data}
           {include file="modules/Customer_Reviews/vote_bar.tpl" rating=$product.rating_data productid=$product.productid}
         {/if}

皮肤/common_files/modules/Product_Options/show_options.tpl

{if $product_options ne ''}
<br />
  {foreach from=$product_options item=v}
    {if $v.options ne ''}
       {$v.class|escape}:
       {foreach from=$v.options item=o}
           {$o.option_name|escape},
       {/foreach}
    {/if}
  <br />
  {/foreach}
{/if}
于 2011-08-24T15:25:33.657 回答