ログイン
始める

Easy Digital Downloads ドキュメント

Easy Digital Downloads のドキュメント、参考資料、チュートリアル

チェックアウトフィールドマネージャー – メタデータの取得

チェックアウトフィールドマネージャー拡張機能を使用すると、チェックアウトフォームにカスタムフィールドを作成できます。これにより、顧客から簡単にデータを収集できます。支払い履歴ページで簡単に確認できますが、顧客が見る領収書に印刷したい場合はどうすればよいでしょうか?このドキュメントがお手伝いします。

ラジオボタンの例

この例では、「この購入プロセスに満足していますか?」というタイトルのカスタムラジオボタンフィールドを使用します。このフィールドのメタキーは自動的にare_you_happy_with_this_purchase_processとして生成され、はい/いいえの回答オプションを作成しました。以下を参照してください。

この情報を顧客の領収書に表示するため、テンプレートを見てみましょう。対象のテンプレートはshortcode-receipt.phpと呼ばれます。このテンプレートをテーマに移動する方法については、ドキュメントをお読みください

そのファイルの先頭近くに、このコードがあります。

$payment = get_post( $edd_receipt_args['id'] );

これにより、この支払いオブジェクトが作成されます。このファイルの残りの部分で、$payment->IDの下にあるこの支払いのIDを見つけることができます。

上記の例では、メタキーはare_you_happy_with_this_purchase_processです。IDとメタキーの両方がわかったので、このコードで値を取得できます。

get_post_meta( $payment->ID, 'are_you_happy_with_this_purchase_process', true )

注意:上記の例の「true」は、get_post_meta()から単一の値が返されることを期待していることを示しています。チェックアウトフィールドマネージャーは、提供するすべてのフィールドタイプに対して単一の値を返します。

領収書への印刷

上記の例では目的の値を取得しましたが、領収書にきれいに表示したいと思います。shortcode-receipt.phpには、edd_purchase_receiptというCSS IDを持つHTMLテーブルがあります。このテーブルをコピーして値を変更できます。テーブルヘッダーの例を次に示します。

Then we can print a table row for the above question, like this:

Multi-answer Example

Some field types allow for multiple answers from a customer. Check boxes allow the customer to select multiple things for example. This is still stored as a single item in meta data; it’s a single array with multiple key/value pairs. How it gets rendered is slightly different from above, however.

Here’s a custom field asking the customer what their favorite animal is:

Rendering it in our HTML table would look like this:

ID, 'favorite_animal', true ) as $animal ) {
            $animals .= '
  • ' . $animal . '
  • ' . "n"; } // print out the table row, wrapping the results in unordered list tags, and escaping with wp_kses_post() ?>

    As you can see it’s only slightly more complicated than the first example.

    Wrapping Up

    Putting together the two code samples from above, we end up with something like this:

    ID ), 'are_you_happy_with_this_purchase_process', true ) ) ); ?>
    ID, 'favorite_animal', true ) as $animal ) { $animals .= '
  • ' . $animal . '
  • ' . "n"; } // print out the table row, wrapping the results in unordered list tags, and escaping with wp_kses_post() ?>
    ID ), 'are_you_happy_with_this_purchase_process', true ) ) ); ?>

    これは次のように表示されます:

    重要なポイント

    • 領収書にカスタムフィールドの回答を表示するには、shortcode-receipt.phpファイルをテーマにコピーし、そこにコードを記述してください。
    • データの取得は、管理エリアで指定されたメタキーに対してget_post_meta()を呼び出すだけです。
    • カスタムフィールドマネージャーのすべてのキーは、post_metaテーブルに単一の値として保存されます。

    注意:Easy Digital Downloadsは、カスタムコーディング/開発のサポートを提供していません。必要な場合は、Codeableを通じて開発者を雇い、必要なカスタム変更を行うことをお勧めします。

    この記事は役に立ちましたか?

    今日から販売を開始しましょう!

    50,000人以上のスマートなストアオーナーに参加して、WordPressでデジタル製品を販売する最も簡単な方法を使い始めましょう。

    Copyright © 2025 Sandhills Development, LLC

    [universally_switcher]