0

私は現在これを持っています:

    <block type="core/text" name="top.address" as="topAddress">
        <action method="addText"><text>PO BOX 1124, Rockdale, Sydney, NSW 2216, Australia</text></action>
    </block>

ただし、住所を更新する必要がある場合は、レイアウト ファイルで手動で行う必要があります。ストア構成 ( general/store_information/address ) からアドレスを取得したいので、1 つの場所からサイトのどこでも簡単に更新できます。

次のように、テンプレートで直接実行できると思います。

<?php echo Mage::getStoreConfig('general/store_information/address') ?>

レイアウトを試したいのですが、可能ですか?

ありがとう。

4

2 に答える 2

3

短い答え - いいえ。そのための機能はありません。それができなかったというわけではありません。アクションタグで使用できる属性があります - ifconfig. システム構成フラグが設定されているかどうかを確認し、true が返された場合は、アクションを続行します。その機能を追加するためにオーバーライドまたは拡張 できます。Mage/Core/Model/Layout.php

ただし、この問題にはいくつかのオプションがあります。

  1. あなたが言ったように、テンプレートを使用できます。
  2. テンプレートを避けたい場合は、提供したコードを使用して、メソッドを拡張Mage_Core_Block_Textおよび指定するブロックを作成できます。_toHtml
  3. 最良の方法:システム構成要求をプルしてテキストとして出力するために使用される汎用モジュールに汎用ブロックを作成することを確認します。これをカスタム アクション/メソッドにするか、属性値を送信して、ブロックのデータ配列に格納し、 で検索することができます_toHtml
于 2012-11-07T02:54:22.240 に答える