Php 如何在magento中获取产品的类别url

Php 如何在magento中获取产品的类别url,php,magento,magento-1.7,Php,Magento,Magento 1.7,下面的代码是为了获取所需的产品详细信息而编写的,但我也想获取产品的类别url,请任何人帮助我在同一个循环中获取url <?php error_reporting(E_ALL | E_STRICT); define('MAGENTO_ROOT', getcwd()); $mageFilename = MAGENTO_ROOT . '/app/Mage.php'; require_once $mageFilename; Ma

下面的代码是为了获取所需的产品详细信息而编写的,但我也想获取产品的类别url,请任何人帮助我在同一个循环中获取url

<?php
       error_reporting(E_ALL | E_STRICT);
       define('MAGENTO_ROOT', getcwd());
       $mageFilename = MAGENTO_ROOT . '/app/Mage.php';
       require_once $mageFilename;
       Mage::setIsDeveloperMode(true);
       ini_set('display_errors', 1);
       Mage::app();
       $products = Mage::getModel("catalog/product")->getCollection();
       $products->addAttributeToSelect(array('name','price','producturl','image'));
       $products->addAttributeToSelect('categoryurl'); // Is this correct
       $products->addAttributeToFilter('status', 1);
       $products->addAttributeToFilter('visibility', 4);

       foreach ($products as $product){

        $sku = $product->getSku();
        $name = $product->getName();
        $currentCat = $product->getCategoryUrl(); // I want to fetch the category url of the product

      }

   ?>

产品对象从不提供类别url,因为产品只提供类别ID

$products->addAttributeToSelect('categoryurl');这是错误的

您需要按类别ID加载类别对象,产品将为您提供类别ID,请尝试以下操作:

foreach($products作为$product){
//获取每个产品的类别列表
$categories=$product->GetCategoricCollection()->addUrlRewriteToResult();
//获取分配给产品的每个类别的类别url
foreach($categories作为$category){
$categoryUrl=$category->getUrl();
}
//获取产品url
$productUrl=$product->getProductUrl();
}