次のコードは、カテゴリの配列を作成します。「ナビゲーションに含める」= ONに設定されているカテゴリのみを取得するにはどうすればよいですか
public function toOptionArray()
{
if (! isset($this->_options))
{
$options = array(
array(
'label' => Mage::helper('vertnav')->__('Store base'),
'value' => 'root',
),
array(
'label' => Mage::helper('vertnav')->__('Current category children'),
'value' => 'current',
),
array(
'label' => Mage::helper('vertnav')->__('Same level as current category'),
'value' => 'siblings',
),
);
$resource = Mage::getModel('catalog/category')->getResource();
$select = $resource->getReadConnection()->select()->reset()
->from($resource->getTable('catalog/category'), new Zend_Db_Expr('MAX(`level`)'));
$maxDepth = $resource->getReadConnection()->fetchOne($select);
for ($i = 2; $i < $maxDepth; $i++)
{
$options[] = array(
'label' => Mage::helper('vertnav')->__('Category Level %d', $i),
'value' => $i,
);
}
$this->_options = $options;
}
return $this->_options;
}
public function getAllOptions()
{
return $this->toOptionArray();
}
このコードは、magento でカテゴリの垂直ナビゲーションを作成するナビゲーション拡張機能の一部です。残念ながら、「ナビゲーションに含める」= ON または OFF に設定されているかどうかに関係なく、すべてのカテゴリが表示されます。
誰かが私にヒントをくれることを願っています