「追加情報」タブでMagentoがデフォルトで行うリストビューをエミュレートしようとしています:
\app\code\core\Mage\Catalog\Block\Product\View\Downloads.php
タブの情報を取得するために必要なファイルを作成しました。
<?php
class Mage_Catalog_Block_Product_View_Downloads extends Mage_Core_Block_Template
{
protected $_list;
public function __construct()
{
parent::__construct();
$this->setTemplate('catalog/product/view/downloads.phtml');
}
public function getChildHtmlList()
{
if (is_null($this->_list)) {
$this->_list = array();
foreach ($this->getSortedChildren() as $name) {
$block = $this->getLayout()->getBlock($name);
if (!$block) {
Mage::exception(Mage::helper('catalog')->__('Invalid block: %s.', $name));
}
$this->_list[] = $block->toHtml();
}
}
return $this->_list;
}
}
情報を表示するためのテンプレート ファイルも作成しました\app\design\frontend\default\themename\template\catalog\product\view\downloads.phtml
。
<?php foreach ($this->getChildHtmlList() as $_html): ?>
<?php echo $_html ?>
<?php endforeach; ?>
XML をcatalogue.xml
ファイルに追加しました。
<action method="addTab" translate="title" module="catalog"><alias>downloads</alias><title>Downloads</title><block>catalog/product_view_downloads</block><template>catalog/product/view/downloads.phtml</template></action>
これにより、「追加情報」タブと同じようにリストビューを含む「ダウンロード」タブが表示されるはずですが、残念ながらそうではありません。
Magento に情報を取得する場所を指定するにはどうすればよいですか - バックエンドで属性を設定しました。それらは属性セットの「ダウンロード」というグループにあるため、機能するはずです。
ありがとう、マイルズ