随机和限制首页magento上的类别大拇指 [英] Randomise & limit Category thumbs on homepage magento

查看:73
本文介绍了随机和限制首页magento上的类别大拇指的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

下面的代码仅显示类别12"中所有子类别的类别标记,以寻找一种将这个数字限制为6个类别并将其随机选择为这些类别的方法.

The following code simply displays the category thumbs for all subcategories in "category 12" im looking for a way to limit this number to 6 categories and have it be a random selection of those categories.

    <ul class="brand_list">
        <?php $media = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA); ?>
        <?php $children = Mage::getModel('catalog/category')->getCategories(12);   ?>
        <?php foreach ($children as $category): ?>
            <?php $category = Mage::getModel('catalog/category')->load($category->getId()); ?>
            <li class="span3">
                <a href="<?php echo $category->getUrl(); ?>">
                    <img alt="<?php echo $category->getName(); ?>" src="<?php echo $media; ?>/catalog/category/<?php echo $category->getThumbnail(); ?>" />
                </a>
            </li>
        <?php endforeach; ?>
    </ul>

对于使用以下两段代码的产品,我之前使用过类似的代码:

i've used similar code before for products using the following two pieces of code:

<?php $collection->getSelect()->order('rand()'); ?>

<?php $_columnCount = $this->getColumnCount(); ?>
<?php $i=0; foreach ($collection->getItems() as $category): if($i==6){break;}?>
<?php if ($i++%$_columnCount==0): ?> 
<?php endif ?>

我尝试重新编码以适合类别拇指,但是我似乎没有任何乐趣.

i have tried recoding this to suit the category thumbs but i don't seem to be having any joy.

推荐答案

您的问题的解决方案如下.我不会使用mysql rand()函数,因为它相当慢.

The solution to your question is bellow. I wouldn't use mysql rand() function since it's quite slow.

<ul class="brand_list">
  <?php 
    $media = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA);
    $parentCategory = Mage::getModel('catalog/category')->load(12);
    $children = Mage::getModel('catalog/category')
                  ->getCollection()
                  ->addIdFilter( array_rand( array_flip( $parentCategory->getAllChildren( true ) ), 6) )
                  ->addAttributeToSelect('name')
                  ->addAttributeToSelect('thumbnail');
  ?>
  <?php foreach ($children as $category): ?>
    <li class="span3">
      <a href="<?php echo $category->getUrl(); ?>">
        <img alt="<?php echo $category->getName(); ?>" src="<?php echo $media; ?>catalog/category/<?php echo $category->getThumbnail(); ?>" />
      </a>
    </li>
  <?php endforeach; ?>
</ul>

这篇关于随机和限制首页magento上的类别大拇指的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆