すべての製品ビューの左側の列product.info.media
からブロックを移動したかったのです。catalog.xml
local.xml
これを実現するために、ファイルに2行追加しました。
<catalog_product_view>
<reference name="left">
<block type="catalog/product_view_media" name="product.info.media" as="media" template="catalog/product/view/media.phtml"/>
</reference>
<reference name="product.info">
<action method="unsetChild"><child>media</child></action>
</reference>
</catalog_product_view>
media.phtmlは、1.7.0.2バージョンのmagentoのデフォルトファイルとバイナリで同一です。
奇妙なことに、Webページの製品画像に次のコードが含まれています。
<img id="image" src="path/to/image.jpg" alt="" title="" style="position: relative; left: 0px; width: 220px; top: 215px;">
なぜトップにスタイルが定義されているのですか?!このスタイルは要素内で定義されているため、cssで変更することもできません。誰かがこのmagentoの動作を説明できますか?
これを作成しているmedia.phtmlの行は次のようになります。
$_img = '<img id="image" src="'.$this->helper('catalog/image')->init($_product, 'image').'" alt="'.$this->htmlEscape($this->getImageLabel()).'" title="'.$this->htmlEscape($this->getImageLabel()).'" />';
echo $_helper->productAttribute($_product, $_img, 'image');
それらapp/code/core/Mage/Catalog/Helper/Output.php
は、productAttribute関数が定義されている場所に私を導きます。しかし、なぜ天国のためにトップスタイルが設定されているのですか?それはまったく意味がありません。設定したい場合はcssを使用します。
前もって感謝します。