繁体   English   中英

使用 REST API 在 Magento 中显示类别及其子类别

[英]Display categories and their subcategories in Magento using REST API

任何人都可以帮助我使用 REST API 显示类别及其子类别吗?

我试过这个网址:

http://localhost/magento/api/rest/products/:productId/categories

但它显示类别ID而不是我需要的,即这样的东西:

http://localhost/magento/api/rest/categories

提前致谢。

/api/rest/products/:productId/categories

这应该检索分配给特定产品的类别列表。 不幸的是,这不会引导您找到您应得的优雅解决方案。

如果您想要一个类别列表,您可能必须使用soap api使用catalog_categories.tree 方法检索类别。 我意识到“使用其他 api”是最糟糕的答案,但是,这是 Magento 目前提供的。

另一种选择是使用您自己的宁静拼凑来扩展库存 api,但是,生命是短暂的。

如果你真的想做这样的事情,那么另一个堆栈溢出问题将帮助你开始: 创建新的 magento Rest api to get category list in magento

Magento 1.x API 指南或代码中确实仍然没有找到任何内容。

您可以在Mage_Catalog模块的文件夹结构中清楚地看到,表示类别的模型仍然只是产品的子模型,因此其主要目标仍然是“仅”能够知道特定产品链接到哪些类别。

REST API 模型的 Magento 文件夹结构

Mage_Catalog_Model_Api2_Product_Category_Rest是,这个类别模型的代码属于Mage_Catalog_Model_Api2_Product_Category_Rest类,看起来与之前的答案没有任何变化(最新版本 1.9.2.4 中的第 61 行左右):

protected function _retrieveCollection()
{
    $return = array();

    foreach ($this->_getCategoryIds() as $categoryId) {
        $return[] = array('category_id' => $categoryId);
    }
    return $return;
}

而且我不确定 Magento 是否仍会在框架的 1.x 版上为 REST API 付出任何努力。

尽管Magento 2.x API 列表中似乎有希望列出这些可用方法:

删除 /V1/categories/:categoryId
获取 /V1/categories/:categoryId
POST /V1/categories
获取/V1/类别
PUT /V1/categories/:id
PUT /V1/categories/:categoryId/move

该代码还提供了获取类别树的可能性。
这里那里

所以在 Magento 2.x 下绝对是可能的

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM