カテゴリ ID に応じて、製品ページに異なる静的 CMS ブロックを表示できるように、以下を作成しました。
<?php
$_category_detail=Mage::registry('current_category'); //Get the current category id
$product = Mage::getModel('catalog/product')->load($product_id); //Get the current category id
$category = Mage::getModel('catalog/layer')->getCurrentCategory(); //Get the current category id
?>
<?php if($category->getId()==23): ?>
<div id="sizingmap">
<?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('sizespecpantsslim')->toHtml(); ?>
</div>
<?php endif;?>
<?php if($category->getId()==10): ?>
<div id="sizingmap">
<?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('sizespecjacket')->toHtml(); ?>
</div>
<?php endif;?>
カテゴリ部分はなんでもいいのですが、同じカテゴリの商品IDで別のブロックを表示したいです。
例 (これは明らかに正しくありません):
<?php if($category->getId()==23) "AND the product id are "372,363,354,349,344": ?>
<div id="sizingmap">
<?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('sizespecpantsslim')->toHtml(); ?>
</div>
else // if they are not the mentioned product id's
<div id="sizingmap">
<?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('sizespecpantsstd')->toHtml(); ?>
</div>