我无法从阵列创建foreach请求数据。
从Magento请求名称,URL和图像的示例:
<?php
$cat_id = array(268, 269, 270, 271, 272, 273, 274, 275, 276);
$helper = Mage::helper('catalog/category');
?>
<div class="main">
<?php foreach ($cat_id as $id):?>
<div class="category">
<a href="<?php echo $helper->getCategoryUrl($id); ?>">
<img src="<?php echo $helper->getThumbnailUrl($id); ?>" title="<?php echo $helper->getName($id); ?>"/>
<div class="text"><h2><?php echo $helper->getName($id); ?></h2></div>
</a>
</div>
<?php endforeach; ?>
</div>
问题是,我什么都不知道,没有错误,我真的很感激,如果有人能告诉我什么是错的?
Vladimir Boliev提供的解决方案:
<?php
$cat_id = array(268, 269, 270, 271, 272, 273, 274, 275, 276);
?>
<div class="main">
<?php foreach ($cat_id as $id):?>
<?php $cur_category = Mage::getModel('catalog/category')->load($id);
$url = $cur_category->getUrl();
$name = $cur_category->getName();
$img = $cur_category->getThumbnailUrl();
?>
<div class="category">
<a href="<?php echo $url; ?>">
<img src="<?php echo $img; ?>" title="<?php echo $name; ?>"/>
<div class="text"><h2><?php $name; ?></h2></div>
</a>
</div>
<?php endforeach; ?>
</div>
答案 0 :(得分:1)
你的数组和foreach很好,$ helper对象有问题。 试试这段代码:
<?php
$cat_id = array(268, 269, 270, 271, 272, 273, 274, 275, 276);
?>
<div class="main">
<?php foreach ($cat_id as $id):?>
<div class="category">
<a href="<?php echo $id; ?>">
<img src="<?php echo $id; ?>" title="<?php echo $id; ?>"/>
<div class="text"><h2><?php $id; ?></h2></div>
</a>
</div>
<?php endforeach; ?>
</div>
答案 1 :(得分:0)
您的foreach代码没有任何问题。
我认为可能会发生的是,您正在设置的ID在此对象上不存在 $ helper
所以,我建议你看看这个对象中是否有东西。使用
var_dump($helper);
看看发生了什么。
答案 2 :(得分:0)
<?php foreach ($cat_id as $id):?>
<div class="category">
<a href="<?php echo $helper->getCategoryUrl($id); ?>">
<img src="<?php echo $helper->getThumbnailUrl($id); ?>" title="<?php echo $helper->getName($id); ?>"/>
<div class="text"><h2><?php echo $helper->getName($id); ?></h2></div>
</a>
</div>
<?php endforeach; ?>
到
<?php foreach ($cat_id as $id){?>
<div class="category">
<a href="<?php echo $helper->getCategoryUrl($id); ?>">
<img src="<?php echo $helper->getThumbnailUrl($id); ?>" title="<?php echo $helper->getName($id); ?>"/>
<div class="text"><h2><?php echo $helper->getName($id); ?></h2></div>
</a>
</div>
<?php } ?>