2012-01-31 3 views
1

複数の支払い方法がある場合にクレジットカード決済方法を常に選択して開く方法はありますか?これはチェックアウトプロセスです。Magentoに複数の支払い方法がある場合に、クレジットカード決済方法をデフォルト(選択)に設定する方法

+0

"いつも選択し開いている"という意味は明確ではありません。 –

+0

彼は何かが決済ステップで常に事前選択されていることを意味し、彼はこれのために最も使用された支払方法を選択したいので、ユーザーはそこをクリックする必要はありません –

+0

まあ、それはまさにアントンを意味しています。 – BeaverProj

答えて

1

ここで私は何をしたのですか。

  • コピーC:\コンサルティング\ SoftStarShoes私のテーマで同等のディレクトリにウェブサイトの\アプリケーション\設計\フロントエンド\ベース\デフォルト\テンプレート\チェックアウト\ 1ページ分の\支払いの\ methods.phtmlファイル\。

  • は、私が最初のコメントの後上部に、$、新しいループカウンタ変数を追加します。

    $ I = 1; <?php if(sizeof($this->getMethods()) > 1): ?>最初のインサイド

  • 条件チェックであれば、他の条件が同じである

    <?php if($i == 1): ?> 
        <input id="p_method_<?php echo $_code ?>" value="<?php echo $_code ?>" type="radio" name="payment[method]" checked="checked" title="<?php echo $this->htmlEscape($_method->getTitle()) ?>" onclick="payment.switchMethod('<?php echo $_code ?>')" class="radio" /> 
    <?php else: ?> 
        <input id="p_method_<?php echo $_code ?>" value="<?php echo $_code ?>" type="radio" name="payment[method]" title="<?php echo $this->htmlEscape($_method->getTitle()) ?>" onclick="payment.switchMethod('<?php echo $_code ?>')"<?php if($this->getSelectedMethodCode()==$_code): ?> checked="checked"<?php endif; ?> class="radio" /> 
    <?php endif; ?> 
    

(基本的に、それはこの場合、最初のお支払い方法チェックし、確認に設定します)、次の条件を追加従来通り。

  • 私は(その周り<?php付き)この行を追加するだけ<?php endforeach; ?>前:

    $ I = $ I + 1;

EDIT:

は実際、オープン、それを維持するための唯一の信頼性の高いクロスブラウザの方法は、ここにファイルをコピーすることでした:\アプリケーション\設計\フロントエンド\ベース\デフォルト\テンプレート\支払\フォーム\ ccsave.phtmlをテーマに設定してから、style = "display:none;"を削除してください。最初から

フォームが常に開いていて、上記コードがデフォルトで選択されているように修正しました。

+0

フォームが常に自動的に表示されないように見えます。私は$( 'payment_form_authorizenet')を追加しなければなりませんでした。ちょうどpayment.init()の後 – BeaverProj

+0

実際、それはいつもうまくいかなかった。だから私は入って、cc.phtmlにstyle = "display:none:"を外しました。上記の編集を参照してください。 – BeaverProj

0

あなたはオブザーバー

try { 
    $quote->getPayment()->setMethod('method_code')->getMethodInstance(); 
} catch (Exception $e) { 
    Mage::logException($e); 
} 

で前の手順でこれを試したが、この支払方法が有効とあなたもこれを設定することができます前に、使用する準備ができなければならないことに注意してくださいとご入金がない場合は、チェックする必要がありますすることができますメソッドを選択する前に、ユーザーの選択を変更したり、各注文に対して同じ支払い方法を強制したりする必要はなく、支払い方法フォームを開くためにフロントエンドコードを変更する必要があります。

+0

私はちょうどそれをJavaScriptで設定できますか? – BeaverProj

+0

よく開いて、JavaScriptで選択することができますが、1つのページのチェックアウトを使用している場合、これは大丈夫ですUIにのみ影響します –

関連する問題