我正在使用此代码在Magento中创建动态丢失的CMS页面;它工作正常,但我喜欢按字母顺序排序,我无法弄清楚如何做到这一点
<?php
$cmsPages = Mage::getModel('cms/page')->getCollection()
->addStoreFilter(Mage::app()->getStore()->getId())
->addFieldToFilter('is_active',1)
->addFieldToFilter('identifier', array(
array(
'nin' => array(
'home',
'no-route',
'enable-cookies',
'thank-you',
'home-demo',
'empty'
)
)
)
);
?>
<style type="text/css">
#cms-navigation a.active { color: red; }
</style>
<script type="text/javascript">
jQuery.noConflict();
jQuery(document).ready(function() {
var url = window.location.pathname,
urlRegExp = new RegExp(url.replace(/\/$/,'') + "$");
jQuery('#cms-navigation a').each(function(){
if(urlRegExp.test(this.href.replace(/\/$/,''))){
jQuery(this).addClass('active');
}
});
});
</script>
<div class="block">
<div class="block-title">
<strong><span>CMS Navigation</span></strong>
</div>
<div class="block-content">
<ul id="cms-navigation" style="padding: 10px;">
<?php
foreach($cmsPages as $_cms):
$page = $_cms->getData();
//sort ($_cms->getData('title'));
?>
<li><a href="<?php echo $this->getBaseUrl() . $page['identifier']; ?>"><?php echo $_cms['title']; ?></a></li>
<?php
endforeach;
?>
</ul>
</div>
</div>
你可以看到我在评论排序的过程中所做的一切,我已经尝试过我能想到的一切,但现在我有点难过了。
非常感谢任何可以提供帮助的人
答案 0 :(得分:0)
您可以使用从Varien_Data_Collection_Db超类继承的setOrder()方法
$cmsPages = Mage::getModel('cms/page')->getCollection()
->addStoreFilter(Mage::app()->getStore()->getId())
->addFieldToFilter('is_active',1)
->addFieldToFilter('identifier', array(
array(
'nin' => array(
'home',
'no-route',
'enable-cookies',
'thank-you',
'home-demo',
'empty'
)
)
)
)
->setOrder('title','ASC');