我如何获得当前的catageory id?

Chr*_*ris 5 php xml variables layout magento

我有一个CMS页面,我将使用以下更新的XML代码显示产品:

<reference name="content">
    <block type="catalog/product_list"  name="product_list" template="catalog/product/wholesale-list.phtml">
        <action method="setCategoryId"><category_id>191</category_id></action>
        <action method="setToolbarBlockName"><name>product_list_toolbar</name></action>
    </block>
</reference> 
Run Code Online (Sandbox Code Playgroud)

我已经尝试获取我在布局中设置的ID,但没有这样的运气.我试过了:

$_category = Mage::registry(‘current_category’);
$currentCategoryId= $_category->getId();
Run Code Online (Sandbox Code Playgroud)

$layer = Mage::getSingleton(‘catalog/layer’);
$_category = $layer->getCurrentCategory();
$currentCategoryId= $_category->getId();
Run Code Online (Sandbox Code Playgroud)

但这些方法都不起作用.有谁知道我怎么能得到身份证?

Ans*_*ori 39

我认为这是最好的方式;)

Mage::registry('current_category')->getId();
Run Code Online (Sandbox Code Playgroud)


Jon*_*Day 5

没试过这个,但可能是这样的:

$this->getLayout()->getBlock('product_list')->getCategoryId()
Run Code Online (Sandbox Code Playgroud)

通过这种方式,您可以直接获取在 XML 中的 Block 对象上设置的变量。

干杯,
JD