如何查询magento数据库表以显示类别和产品?

时间:2011-11-26 07:14:58

标签: php magento

我有一个PHP网站,现在我想在我现有的php网站上添加购物车。 所以我正在使用magento。

在我的网站目录中,我创建了一个名为“shop”的新目录,并将magento放在此目录中。

我的网站工作正常。但是在网站的主页上,我想显示magento网站上的类别和产品,因此不可能使用magento内置功能,因为我的网站的主页不在magento网站上。

所以我认为我应该查询magento数据库表,但是magento数据库表是如此复杂,所以任何可以让我对这个问题有所了解的机构?

有没有其他方法可以解决我的问题,如果只有查询是解决方案,那么我将如何查询magento数据库表以显示类别和产品。

提前致谢。

2 个答案:

答案 0 :(得分:4)

我会尝试这样的事情:

require 'shop/app/Mage.php';

/* Run magento app */
Mage::app();

function get_categories(){

    $category = Mage::getModel(’catalog/category’);
    $tree = $category->getTreeModel();
    $tree->load();

    $ids = $tree->getCollection()->getAllIds();
    $arr = array();

    if ($ids){
        foreach ($ids as $id){
            $cat = Mage::getModel(’catalog/category’);
            $cat->load($id);
            array_push($arr, $cat);
        }
    }
    return $arr;
}

$categories = get_categories();

foreach($categories as $cat) {
    echo "<br />Category: " . $cat->getName();
    $collection = $cat->getProductCollection();
    foreach ($collection as $item) {
    $product = Mage::getModel("catalog/product")->load($item->getId());
        echo "<br />Product: " . $product->getName();
    }
}

答案 1 :(得分:-1)

您无需编写复杂查询来在主页中显示某些类别。但您可以在主页上添加以下内容(菜单&gt; CMS&gt;页面&gt;主页)

{{block type="catalog/product_list" category_id="3" template="catalog/product/list.phtml"}}

其中category_id是要显示的类别的ID。请参阅screenshot to get cat id