这是用于获取所选类别的phtml代码。我想要得到类别描述。我怎么才能做到这一点?
<?php
$catId =2;
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$subcategory = $objectManager->create('Magento\Catalog\Model\Category')->load($catId);
$subcats = $subcategory->getChildrenCategories();
?>
<ul>
<li> <span> All Categories </span> </li>
<?php
foreach ($subcats as $subcat) {
if ($subcat->getIsActive()) {
$subcat_url = $subcat->getUrl();
$subcat_img = "";
$placeholder_img = "/media/placeholder.png";
?>
<li>
<a href="<?php echo $subcat_url; ?>">
<?php echo $subcat->getName(); ?>
</a>
</li>
<?php
}
}
?>
</ul>
发布于 2019-05-08 13:09:47
要获得类别描述,您必须加载Category,然后可以使用getDescription()函数。
我对你的代码做了一些修改。请在此处找到新代码:
<?php
$catId =2;
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$subcategory = $objectManager->create('Magento\Catalog\Model\Category')->load($catId);
$subcats = $subcategory->getChildrenCategories();
?>
<ul>
<li> <span> All Categories </span> </li>
<?php
foreach ($subcats as $subcat) {
if ($subcat->getIsActive()) {
$subcat = $objectManager->create('Magento\Catalog\Model\Category')->load($subcat->getId());
$subcat_url = $subcat->getUrl();
$subcat_img = "";
$placeholder_img = "/media/placeholder.png";
?>
<li>
<a href="<?php echo $subcat_url; ?>">
<?php echo $subcat->getName(); ?>
</a>
<p><?php echo $subcat->getDescription(); ?></p>
</li>
<?php
}
}
?>
</ul>
注意:在Magento2中,在模板文件中直接使用ObjectManager不是一个好的做法。依赖注入是推荐的方法。
有关如何使用ObjectManager以及直接使用ObjectManager的后果的更多详细信息,请访问以下链接:
https://stackoverflow.com/questions/56034649
复制