是否有SS4.3代码在自定义首页模板上显示Silvershop特色产品

时间:2019-05-28 09:25:26

标签: php silverstripe-4 silvershop

我正在尝试为自己创建一个Silvershop网站,但是当前建议在另一个模板页面上显示特色产品的代码在SS4.3上不起作用。我是否需要添加其他代码以使建议的代码在较新的silverstripe 4中工作?

这是我一直在使用的资源: https://silverstripe-shop.readthedocs.io/en/stable/en/02_Customisation/01_Recipes/Featured_Products/ 在此过程中,我不得不进行一些调整,并且在大多数情况下,我设法使其正常运行,但是我不确定如何调整此代码以使其正常工作。

class IndexPageController extends PageController {
}

/**
* Get all products marked as featured that can be purchased.
*/

class IndexPageController extends ProductCategory_Controller   {

   function FeaturedProducts()
   {
       return Product::get()->filter(array(
           'Featured' => 1
           'AllowPurchase' => 1
       ));
   }
}

页面显示错误消息“当前无法处理此请求。”

1 个答案:

答案 0 :(得分:0)

您在数组中缺少逗号:

function FeaturedProducts()
    {
        return Product::get()->filter(array(
            'Featured' => 1,
            'AllowPurchase' => 1
       ));
   }

还要确保您使用的是Product类

use SilverShop\Page\Product;

在您的模板中:

<% if $FeaturedProducts %>

                        <% loop $FeaturedProducts %>
                                $Title
                        <% end_loop %>


            <% end_if %>