1.8で壊れたOnepageチェックアウト?


12

私たちのチェックアウトは壊れているようで、より多くの人がmagento 1.8で問題を抱えているようです。手順4で[続行]ボタンを押した後は何もしません。PHP5.4.19を実行し、chromium v​​28、firefox v22、safari v5.1で試しました。

ログにエラーはなく、デフォルトのテーマでも同じです。

回答:


15

ここで解決策を見つけました:http : //www.magentocommerce.com/boards/viewthread/441003/#t460203

/ app / design / frontend / base / default / template / checkout / onepage / file payment.phtmlに移動して、36行目を開きます

<fieldset>
    <?php echo $this->getChildHtml('methods') ?>
</fieldset>

フィールドセットにIDを追加

<fieldset id="checkout-payment-method-load">
    <?php echo $this->getChildHtml('methods') ?>
</fieldset>

hungtk2707に感謝します!


2
コードを変更しておらず、サードパーティのモジュールが十分に機能している場合、アップグレードの問題のほとんどは、以前のバージョン用に開発されたテンプレートとレイアウトに起因します。多くの場合、失敗した領域のテンプレートを処理し、テンプレートの内容と新しくインストールされたベーステンプレートの内容のコードの違いをチェックします。レイアウトでは、多くの場合、移動したブロック、追加する必要のある新しいブロックなどを探しています。投稿が示すように、次のステップに移動するためにJavaScriptが参照に必要とするフィールドセットにidを追加しました。
Fiasco Labs

2
クリーンバージョンのmagento 1.8.1をインストールしたばかりですが、これはコードのエラーのようです。ベースphtmlファイルに含める必要があります。

1
あなたは私の命を救います+ 1
ラム・シャルマ14年

5

私もチェックアウトの問題があり、解決策を見つけました:

/template/checkout/onepage/review/info.phtml(最後に)

取り替える

review = new Review('<?php echo $this->getUrl('checkout/onepage/saveOrder') ?>', '<?php echo $this->getUrl('checkout/onepage/success') ?>', $('checkout-agreements'));

沿って

review = new Review('<?php echo $this->getUrl('checkout/onepage/saveOrder', array('form_key' => Mage::getSingleton('core/session')->getFormKey())) ?>', '<?php echo $this->getUrl('checkout/onepage/success') ?>', $('checkout-agreements'));

チェックアウトの問題が解決するはずです。


1
コードサンプルが不完全であるように見えます。適切なマークダウン形式を含めるように編集してください。
ベンマーク

これにより、ヒットすると確認して302が返され、フォームが送信されないという問題が解決しました。
woot586 14

2

Magentoを(1.9.1に)アップグレードし、チェックアウトテンプレートがカスタマイズされ、xmlも変更された場合。

これの外観:

<block type="checkout/onepage_payment" name="checkout.onepage.payment" as="payment" template="checkout/onepage/payment.phtml">
     <block type="checkout/onepage_payment_methods" name="checkout.payment.methods" as="methods" template="checkout/onepage/payment/methods.phtml">
          <action method="setMethodFormTemplate"><method>purchaseorder</method><template>payment/form/purchaseorder.phtml</template></action>
     </block>
</block>

問題はcheckout / onepage / payment / methods.phtmlです。このデータは、ajaxリクエストを介してロードする必要があります。これをcheckout / onepage / payment / info.phtmlに置き換えて、次のようにします。

<block type="checkout/onepage_payment" name="checkout.onepage.payment" as="payment" template="checkout/onepage/payment.phtml">
     <block type="checkout/onepage_payment_methods" name="checkout.payment.methods" as="methods" template="checkout/onepage/payment/info.phtml">
          <action method="setMethodFormTemplate"><method>purchaseorder</method><template>payment/form/purchaseorder.phtml</template></action>
     </block>
</block>

1

テンプレートにレビューがない場合= info.phtmlの下部に追加するだけです

</script>
<script type="text/javascript">
//<![CDATA[
    review = new Review('<?php echo $this->getUrl('checkout/onepage/saveOrder',       array('form_key' => Mage::getSingleton('core/session')->getFormKey())) ?>', '<?php echo $this-  >getUrl('checkout/onepage/success') ?>', $('checkout-agreements'));
//]]>
</script>

このファイルの最後まで。例:./app/design/frontend/blank/default/template/checkout/onepage/review/info.phtml


1

rwd(iphone)storeviewで同じ問題があり、最初の問題を解決しました

しかし、後で問題が発生しました(続行ボタンが機能しない)解決策は、/ app / design / frontend / default / iphone / template / checkout / onepage / reviewからinfo.phtmlを収集することでした

私は古い作業バージョンから取った。

奇妙な事実は、デスクトップビューですべてが正常に機能したことです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.