ヘルパー、そのメソッド、および製品の属性に慣れるための助けが必要です。具体的には:$_helper->productAttribute($product, $attributeHtml, $attributeName)
私が使用/レビューしているファイルは次のとおりです。
app\code\core\Mage\catalog\helper\output.php
app\design\frontend\[theme name]\template\catalog\product\view\media.phtml
次のコード行は、製品画像の html を生成します。
echo $_helper->productAttribute($_product, $_img, 'image');
ヘルパー クラス コードは、次のコード部分でメソッドを記述します。テンプレート ファイルの前の行に記述されている img html を単純にエコーする代わりに、なぜこのメソッドを使用する必要があるのでしょうか。
public function getHandlers($method)
{
$method = strtolower($method);
return isset($this->_handlers[$method]) ? $this->_handlers[$method] : array();
}
public function process($method, $result, $params)
{
foreach ($this->getHandlers($method) as $handler) {
if (method_exists($handler, $method)) {
$result = $handler->$method($this, $result, $params);
}
}
return $result;
}
public function productAttribute($product, $attributeHtml, $attributeName)
{
/* Code that is not relevant to this example */
$attributeHtml = $this->process('productAttribute', $attributeHtml, array(
'product' => $product,
'attribute' => $attributeName
));
return $attributeHtml;
}
どんな助けでも大歓迎です。