2012-04-16 18 views

答えて

4

私の通常のモットーは、あなたが探している機能をすでに持っているモジュールを見つけて(必要に応じて購入する)ことです。特に、このプロジェクトの期間にバージョンアップが必要な場合は、プロバイダから事前にパッケージ化されたソリューションを探すことができるためです。

私はMagentoのインストールに追加したカスタムコードのすべてのビットを後悔します。今私はハックを解明するだけでなく、サイトを維持して仕事を続けなければならないからです。最初の場所ではるかに高速だった既製の拡張機能でハッキングを置き換えるのに多くの時間を費やす時間。

私はこのような態度がスタックオーバーフローに対して何かできると思っていますが、本当にマジェントの仕事は誰かが仕事を少なくすることです。


2年後、更新:downvoteの穏やか突く後(おそらく質問をオフに肩をすくめるように見えるため)、私が学んだことのいくつかを再検討し、共有するために戻っています。追加フィールドのプログラミングの側面は、データの永続性の概念です。

注文に続いてカスタムフィールドonly appearing in the transactional emailsがOKであれば、タスクはどこかのフォームにフィールドを追加してから、ポストデータを捕捉して電子メールに挿入するようにコントローラを更新するという単純なものです。バックエンドのカスタム変数を使用して容易にこれをemail templatesに公開することができます。そして、Magento SE on programatically creating a custom variable

バックエンドに永続化するには、モジュール内のインストーラを使用してデータベースフィールドを追加する必要があります。 iCoreThink blogは、手順を明確に説明し、その理由を説明し、自分の仕事を確認する方法を説明し、顧客のアカウントに表示するような現実的な実装を提供します。下記の「other blog」にはこのような例がありますが、その例は請求と配送に特に関連しています。私のupvotesとブックマークから


資源:
»このiCoreThink blog postは、これまでと私は今、次のよ私の好きなリファレンスです。

»私は自分のcheckoutfieldsモジュールを含んでいるテンプレート修士FireCheckoutを使用していたが、私は、Magentoのの1つのページのチェックアウトの流れのための彼らの単一のビューのチェックアウトを放棄してきました。私は今チェックアウトのために自分のチェックアウトフィールドを自分のテンプレートに適合させようとしています。

私は確かに考えましたAlan StormはCheckoutカスタムフィールドについての記事を書いていますが、私は1つも見ません。

»This Magento SEには、いくつかのブログとpaid extensionが掲載されています。卓越性のブログは大丈夫ですが、彼のスタイルは私にとってはあまりにも精巧で、私は何も学んでいません。 other blogでは、モジュールの構築手順とデータベースフィールドのインストール手順について説明しています。

»unexpected-IT blogは、コアファイルにコードを追加するためのハックを示しています(ただし、残念ながらapp/code/localにコピーしてファイルを上書きする方法は示されていません)。また、手動で実行して列を取得する手順データベースに追加されたフィールド。明らかに1.4とそれ以下には完璧ですが、コメントは1.5以上で何をすべきかを説明するようです。

この最後のハックシェットの変更は、既存のMagento管理ページに余分なビットをシームレスに追加し、仕事が少ないように感じるため、私の個人的なお気に入りです。警告:バージョンコントロールを使用せずにこれを行うのではなく、バージョンのアップグレードの間にコアコードの変更が発生した場合、絶対に破損します。

+0

リソースのおかげで、非常に便利です。ちょうど警告の言葉:iCoreThinkチュートリアルはうまく始まりますが、2つのモデルクラスIcorethink_Custom_Model_Custom_Order、Icorethink_Custom_Model_Custom_Quoteのコードは含まれていません。私はモジュールがそれらなしで動作するかどうかはわかりません。万が一このコードをお持ちですか? – Alan

+0

[ExcellenceMagento tutorial](http://excellencemagentoblog.com/magento-add-custom-fields-checkout-page)のCtrl + C/Vコピーのようです。これらのクラスを取得するには、Webサイトからソースコードをダウンロードします:)。 – Alan

+0

それに気づいてくれてありがとう、アラン! –