2012-01-24 13 views
2

「addresstype」というMagentoのカスタマーアドレス属性を作成しました。これはvarcharで、フロントエンドにラジオオプション「Residential」と「Business」があります。Magentoのバックエンドアドレス属性

属性はチェックアウト時に保存され、データベースに表示されます。お客様はプロフィールを編集でき、$address->getAddresstype();を使用して変数を積極的にプルして適切なラジオボタンを確認できます。

私の唯一の問題は、個々の受注ページのバックエンドで、変数が通らないことです。私はそれがで「is_visible」としてマークされている($address->getAddresstype()を使用して)/app/code/core/Mage/Customer/Block/Address/Renderer/Default.phpを編集したとprint_r($attributes = Mage::helper('customer/address')->getAttributes());

を使用して、配列内の属性を見ることができますデータベースも同様です。

+0

だから!あなたの問題は何ですか? –

答えて

4

これは、受注/請求書ページが異なるテーブル(sales_flat_order_address)から情報を取り戻すためです。あなたが最初に正しい場所にいると仮定すると(これはあなたのように見えます)、Magentoが正しい情報をコピーするようにする必要があります。

<fieldsets> 
    <sales_convert_quote_address> 
     <your_attribute> 
      <to_order>*</to_order> 
     </your_attribute> 
</fieldsets> 

また、私は思い出すことができない私の頭の上から、引用アドレスへのアドレスから値をコピーするには、別のフィールドの設定値を追加する必要があります。 Magentoのコードで* .xmlのフィールドセットを検索すると、例が見つかります。

+0

あなたはそうです。フラットオーダーテーブルに列を追加しました。私はすでにconfig.xmlファイルにfieldsetsを持っていました。チェックアウト中に属性はデータベースに保存されません。何か案は? – user975206

+0

システム>キャッシュ管理でキャッシュをフラッシュしましたか?両方のボタンをクリックします。 –

関連する問題