Краткий обзор: Я пытаюсь вернуть результаты из определенного набора статических блоков в файл phtml (который затем вызывается со страницы cms ) в Magento .
Примечание: Я искал во всем Google, и некоторые ответы приближают меня к другим, но ничего из того, что я пробовал, похоже, не работает100%?
Подробности:
У меня уже есть набор определенных статических блоков, которые все начинаются с идентификатора testimonial-
.Например, каждый статический блок выглядит так: testimonial-1
, testimonial-2
, testimonial-3
и так далее.У меня есть в общей сложности 5 на моем сайте разработчика (больше на живом сайте, но здесь это не имеет значения).
У меня есть CMS Page с вытягиванием кодафайл name.phtml
(расположение моего файла phtml здесь: app / design / frontend / [package] / [template] / template / page / ):
{{block type="core/template" template="page/name.phtml" title="Others Say:" identifier="testimonial-"}}
Здесьмой код для файла .phtml:
<?php
// add the collection with filters
$collection = Mage::getModel('cms/block')->getCollection()
->addFieldToFilter('identifier', array('like'=>'testimonial'.'%'))
->addFieldToFilter('is_active', 1);
// get the count
$blockCount = $collection->count();
echo 'Block Count: ' . $blockCount . '<br />'; // just for testing
$blockNum = 1;
foreach($collection as $key => $value){
$_blockId = $this->getIdentifier();
$block_ID = $_blockId . $blockNum;
echo "Key: " . $key . " - " . "Block ID: " . $block_ID . "<br />";
$blockNum++;
}
$_block = $this->getLayout()->createBlock('cms/block')->setBlockId($block_ID);
if ($_block) :
?>
<div class="block block-testimonial">
<div class="block-title">
<strong><?php echo $this->getTitle(); ?></strong>
</div>
<div class="block-content">
<?php echo $_block->toHtml(); ?>
</div>
Цикл foreach($collection as $key => $value)
распечатывает это:
Key: 27 - Block ID: testimonial-1
Key: 28 - Block ID: testimonial-2
Key: 29 - Block ID: testimonial-3
Key: 30 - Block ID: testimonial-4
Key: 31 - Block ID: testimonial-5
Что хорошо.
Однако, единственный блок, который отображается, это последний блок (testimonial-5
).Так как я пытаюсь перечислить все свидетельские блоки, как я могу отобразить каждый идентификатор блока на странице?
Полегче на меня, яя начинающий в php.