0

今後の製品のティーザーとして、magento で CMS ページを作成しています。右側のバーで 2 つの列を使用し、バックエンドでレイアウト更新 XML を使用して、右側用に作成したカスタム ブロックを呼び出しています。

今はプレースホルダーだけを読み込んでいて、後で phtml を編集します。

右側に 2 つのブロックを使用すると問題ないように見えますが、さらに追加すると、フッター全体が破損し、右側の列に移動します。

右側に 3 つのカスタム ブロックを取得しようとしています。

これが私のレイアウト更新XMLです

<reference name="right">
<block type="newsletter/subscribe" name="left.newsletter" template="newsletter/rightsubscribe.phtml"/>
<block type="core/template" name="name1" template="page/custom/custom1.phtml"/>
<block type="core/template" name="name2" template="page/custom/custom2.phtml"/>
</reference>

これは、私が使用している税関ブロックの HTML です。

<div id="shop-with-confidence" class="white-box">
    <h3>Custom1</h3>
    <div class="white-box-inner">
         Testing1
    </div>


    <div id="shop-with-confidence" class="white-box">
    <h3>Custom2</h3>
    <div class="white-box-inner">
         Testing2
    </div>

私が編集しているページを破壊する理由を誰か知っていますか?

4

1 に答える 1

0

OPはすでに問題を自分で解決していますが、親子ブロックの関係を簡単にチェックして、問題がフレームワークに関連しているかマークアップに関連しているかを判断できることは注目に値します。

親ブロックが持つ子ブロックのリストを確認するには、テンプレートで次の操作を行うだけです。

Zend_Debug::dump($this->getChild()) //list of children
Zend_Debug::dump($this->getSortedChildren()) //list of ordered children

テンプレートがないブロック(core/text_listたとえば、「右」)の場合、子ブロックテンプレートからもこれを行うことができます。

Zend_Debug::dump($this->getParentBlock()->getChild()) //list of children
Zend_Debug::dump($this->getParentBlock()->getSortedChildren()) //list of ordered children

詳細については、参照Mage_Core_Block_Abstractしてください。

于 2012-06-24T12:05:23.110 に答える