我想在客户渴望之后显示所有类别。这意味着所有类别都是在客户左导航之后显示的。我多次尝试通过不同的方式,但我不能这样做。有什么想法吗?
答案 0 :(得分:1)
最后解决了这个问题,我发现这个解决方案只需要几步之后。
第1步:
在 app / code / local / mage / customer / block / account / categories.php 中创建一个块,过去的代码为
class Mage_Customer_Block_Account_Categories extends Mage_Core_Block_Template {
}
第2步:
app / code / design / frontend / default / default / layout
中customer.xml的过去代码<reference name="left">
<block type="customer/account_categories" name="customer_account_categories" template="customer/account/categories.phtml" />
</reference>
第3步::
最后在模板文件中创建一个phtml文件(app / code / design / frontend / default / default / template / customer / account)并通过此代码。
$_categories = Mage::getModel('catalog/category')->getCollection()
->addAttributeToSelect('*')
->addAttributeToSelect('name')
->addAttributeToSelect('url_key')
->setLoadProductCount(true)
->setLoadProductCount(true)
->addAttributeToFilter('level',2)
->addAttributeToFilter('is_active',array('eq'=>true))
->load();
foreach ($_categories as $_category) {
$_category->getName();
}
这就是您的客户帐户导航中的第一级别类别。
答案 1 :(得分:0)
从后端创建一个块,在该块中调用一个phtml文件为
{{block type =“catalog / product_list”template =“catalog / product / category_list.phtml”}}
将以下代码粘贴到category_list.phtml文件
中 <?php
$_categories = Mage::getBlockSingleton(
目录/ navigation`);
foreach ($_categories->getStoreCategories() as $_category)
{
$category = Mage::getModel(`catalog/category`);
$category->load($_category->getId());
$subcategories = explode(`,`, $category->getChildren());
&GT?;
<dl>
<dt>`<?php echo $this->htmlEscape($_category->getName()); ?>`</dt>
<dd>
<ol>
<?php
foreach ($subcategories as $subcategoryId)
{
$category->load($subcategoryId);
echo `<li><a href="` . $category->getURL() . `">` . $category->getName() . `</a></li>`;
}
?>
</ol>
</dd>
</dl>
现在在customer.xml中调用此块,如下所示:
<customer_account translate="label">
<reference name="left">
<block type="cms/block" name="my_block"><action method="setBlockId"> <block_id>my_block_id</block_id></action></block>
</reference>
</customer_account>