-1

我是 Magento 的菜鸟,刚开始使用它。所以,我要做的是在一个 CMS 页面上将一个给定类别的所有产品的简单列表(名称 - 链接对)放在一起。充当某种索引​​。在我的 CMS 页面中插入这个块帮助我前进了一点。

{{block type="catalog/product_list" name="home.catalog.product.list" alias="products_homepage" category_id="9" template="catalog/product/list.phtml"}}

但是,这会显示有关产品的所有信息(价格、图片、添加到购物车按钮等),而且每页最多只能显示 30 个条目。

我只需要它显示一个简单的名称 - url 对。如果可能,无需编辑现有文件。任何想法或指示将不胜感激!

4

2 回答 2

2

好的,得到这个工作。脚本看起来像这样(以下仅检索产品名称;显然可以扩展):

function getProdList ($catId)
{   
    $categories = new Mage_Catalog_Model_Category();
    $categories->load($catId); // the id of your desired category
    $collection = $categories->getProductCollection()->addAttributeToSelect('name');

    foreach ($collection as $product)
    {
        echo sprintf("%s<br />", $product->getName());
    }
}

当您调用该函数时,您只需将您希望查看的产品类别的 ID 传递给它。创建一个 .phtml 文件,将其放在您的 magento 模板文件夹中的某个位置。然后在要插入列表的 CMS 页面中使用块语句:

{{block type="core/template" name="fileNameHere" template="path/to/file.phtml"}}

感谢卢卡斯姆斯让我走上了正确的道路。希望这可以帮助那里的人。和平!

于 2012-06-01T22:46:16.520 回答
0

感谢您提供信息丰富的帖子。对于那些对 PHP 不是很流利但由于您正在寻找显示给定类别的产品名称列表的解决方案而登陆此页面的人,我设法通过简单地修改其他人的模板文件找到了解决方案。
对于这个解决方案,我发现最适合的扩展是:
freebie magento features products-widget version-2
(在 github 上找到最新版本:Cube-Category-Featured-Products)。

登录和注销并清除缓存后,我能够将小部件插入静态块并修改.phtml用于生成我想要的自定义视图的文件。插入时小部件看起来像这样:

{{widget type="categoryfeatured/list" template="categoryfeatured/block.phtml" categories="118" num_products="10" products_per_row="1" product_type="all"}}. 

我只是打开app/design/frontend/base/default/template/categoryfeatured/block.phtml复制了它的内容并创建了一个.phtml名为的新文件category_product_listing.phtml,然后将小部件实例指向新.phtml文件,如下所示:

{{widget type="categoryfeatured/list" template="categoryfeatured/category_product_listing.phtml" categories="118" num_products="10" products_per_row="1" product_type="all"}}

然后.phtml,我用我对 PHP 的基本了解浏览了这个文件,并删除了所有项目,如图像、添加到购物车按钮、评论等,直到我只剩下基本的链接产品标题以及类别标题完好无损。

我希望这可以帮助某人,因为我花了几个小时试图弄清楚这一点。

于 2012-12-17T05:49:15.287 回答