在Magento中,我使用下面的代码创建了一个phtml模板文件.我从本教程中得到了这个.我和其他人想知道如何按字母顺序对此类别列表进行排序.第一行代码创建一个带有Category ID的数组.再往下,我们可以使用foreach部分中的ID获取Category Name.但是要按名称排序,我们需要在foreach之前获取一个数组中的Names,然后按名称排序.怎么样?
<?php
$cats = Mage::getModel('catalog/category')->load(319)->getChildren();
$catIds = explode(',',$cats);
?>
<ul>
<?php foreach($catIds as $catId): ?>
<li>
<?php
$category = Mage::getModel('catalog/category')->load($catId);
echo '<a href="' . $category->getUrl() . '">';
echo $category->getName() . '</a>';
?>
</li>
<?php endforeach; ?>
</ul>
Run Code Online (Sandbox Code Playgroud)
注意:319是我想要列出子类别的父类别的类别ID.另外,我不是说这是一个类别页面模板.我在CMS页面中插入一个块(该部分已经在工作).
Ant*_*n S 21
你可以打电话
Mage::getModel('catalog/category')->getCollection()->addFieldToFilter('parent_id', '319')->addAttributeToSort('name', 'ASC');
Run Code Online (Sandbox Code Playgroud)
你将立即整理整个束,休息只是典型的Varien系列的迭代.这是一个伪示例,我不知道parent_id是否是db中的实际字段名称,因此您可能会在得到正确的结果之前检查出来.
ale*_*lex 10
您可以先构建一个类别名称列表.
<?php
$cats = Mage::getModel('catalog/category')->load(319)->getChildren();
$catIds = explode(',',$cats);
$categories = array();
foreach($catIds as $catId) {
$category = Mage::getModel('catalog/category')->load($catId);
$categories[$category->getName()] = $category->getUrl();
}
ksort($categories, SORT_STRING);
?>
<ul>
<?php foreach($categories as $name => $url): ?>
<li>
<a href="<?php echo $url; ?>"><?php echo $name; ?></a>
</li>
<?php endforeach; ?>
</ul>
Run Code Online (Sandbox Code Playgroud)
我在不太了解Magento的情况下编写了这个答案,只想快速找到有用的东西.Anton的答案更好,更有Magentic(?)
归档时间: |
|
查看次数: |
20896 次 |
最近记录: |