2012-02-04 17 views
1

私はいくつかのカスタムオプションを持つシンプルな商品を持っています。オプションのプロセスは、フロントエンドで正常に動作するようです。選択したオプションがショッピングカートに表示され、価格が正しい。私は注文を出し、管理者がプルするとオプションヘッダーが表示されますが、実際の選択は表示されません。選択内容は、私と顧客に送信された注文確認メールに表示されます。だから彼らは管理者になっているはずです。注文や請求書に載っていない理由は何ですか?シンプルな商品のカスタムオプションが注文時に表示されない

+0

あなたが実行しているのMagentoのバージョンは何? –

+0

私はCE ver 1.6を使用しています – billybjr

+1

再インデックス製品のフラットデータを試してください。 – Zyava

答えて

0

ご迷惑をおかけして申し訳ありません。 adminhtmlテンプレートファイルにあるバグ(最大1.6.2まで)があります。ここに修正があります。

diff --git a/app/design/adminhtml/default/default/template/sales/items/column/name.phtml b/app/design/adminhtml/default/default/template/sales/items/column/name.phtml 
index 7b36ee1..9e1f603 100644 
--- a/app/design/adminhtml/default/default/template/sales/items/column/name.phtml 
+++ b/app/design/adminhtml/default/default/template/sales/items/column/name.phtml 
@@ -41,16 +41,7 @@ 
      <?php if (isset($_option['custom_view']) && $_option['custom_view']): ?> 
       <?php echo $this->getCustomizedOptionValue($_option); ?> 
      <?php else: ?> 
-    <?php $_option = $this->getFormattedOption($_option['value']); ?> 
-    <?php echo $_option['value']; ?><?php if (isset($_option['remainder']) && $_option['remainder']): ?><span id="<?php echo $_dots = 'dots' . uniqid()?>"> ...</span><span id="<?php echo $_id = 'id' . uniqid()?>"><?php echo $_option['remainder'] ?></span> 
-     <script type="text/javascript"> 
-     $('<?php echo $_id ?>').hide(); 
-     $('<?php echo $_id ?>').up().observe('mouseover', function(){$('<?php echo $_id ?>').show();}); 
-     $('<?php echo $_id ?>').up().observe('mouseover', function(){$('<?php echo $_dots?>').hide();}); 
-     $('<?php echo $_id ?>').up().observe('mouseout', function(){$('<?php echo $_id ?>').hide();}); 
-     $('<?php echo $_id ?>').up().observe('mouseout', function(){$('<?php echo $_dots ?>').show();}); 
-     </script> 
-    <?php endif; ?> 
+    <?php echo $_option['value']; ?> 
      <?php endif; ?> 
      </dd> 
     <?php endforeach; ?> 
0

こんにちは、これは1.6.2.0で私のために動作します。 C.E.

  1. オープンこのファイルアプリ/設計/ adminhtml /デフォルト/デフォルト/テンプレート/販売/アイテム/コラム/ name.phtml

  2. 2 endifの間に次の行を追加します。それぞれ53行目と55行目のステートメント。

    <?php echo $_option['option_value']; ?> 
    
  3. キャッシュタイプをリフレッシュし、ページをリロードします。あなたはmagento backend/adminパネルの注文商品の詳細でカスタムオプションを見ることができます。

1

私は/app/code/core/Mage/Adminhtml/Block/Sales/Items/Column/Name.php

ファイル

を変更することで、1.6.1.0でこれを固定

1.7.0からこのファイルをコピーしましたが、この問題はありません。 そして、ここでは説明です:

クラス宣言ではまったくの方法がありませんでしたあなたは、このファイルで定義され、この関数を見つけた場合、私たちが必要とする1はgetFormattedOption あり、その後、この答えをスキップします。

ない場合は、単にクラス内でこの関数を挿入するので、ファイル全体は次のようにする必要があります

class Mage_Adminhtml_Block_Sales_Items_Column_Name extends Mage_Adminhtml_Block_Sales_Items_Column_Default 
     { 
      /** 
      * Add line breaks and truncate value 
      * 
      * @param string $value 
      * @return array 
      */ 
      public function getFormattedOption($value) 
      { 
       $_remainder = ''; 
       $value = Mage::helper('core/string')->truncate($value, 55, '', $_remainder); 
       $result = array(
        'value' => nl2br($value), 
        'remainder' => nl2br($_remainder) 
       ); 

       return $result; 
      } 
     } 
関連する問題