Using custom fields on affiliate registration form : アフィリエイト登録フォームのカスタム フィールドを使用する
Using custom fields on affiliate registration form
WP Affiliate Manager のフィールドには、10桁の電話番号と5桁の郵便番号を処理できる検証機能がデフォルトで組み込まれています。ただし、これはあなたの国で WP Affiliate Manager を使用できないことを意味するものではありません。
WP-Adminで「アフィリエイト」→「設定」に移動し、「パートナー登録(アフィリエイト登録)」タブをクリックします。「有効」列のチェックボックスをオフにすることで、デフォルトの「 US 」フィールドを無効にできます。その後、「カスタムフィールドを追加」ボタンをクリックして、これらのフィールドを独自のカスタムフィールドに置き換えることができます。
管理側 ダッシュボード

ユーザー(アフィリエイター側) 登録画面


「カスタムフィールド」ダイアログでは、電話番号、都道府県、郵便番号など、追加したい情報を入力する新しいフィールドを作成できます。「テキスト」フィールドタイプを使用すれば、最大文字数を設定できます。また、「数値」フィールドタイプを使用すれば、すべて数字であることを保証する検証機能も利用できます。
結構簡単に追加できるように記載がありますが、実際上記方法でカスタムフィールドは使用できるようになりますが、アフィリエイターの登録画面には表示されない! 必ずカスタマイズ(function.phpを書き換える)が必要
少し詳しく記載する。
結論 カスタムフィールドの追加、有効化の詳細
WP Affiliate Manager の「アフィリエイト設定 > アフィリエイト登録」画面でカスタムフィールドを追加しても、
それだけでは登録フォームには表示されません。
なぜなら:
💡 登録フォームにカスタムフィールドを出すには、functions.php
等で affiliates_custom_fields
フィルターに明示的に追加しなければならない設計だからです。
🔍 仕組みの概要
操作 | 結果 |
---|---|
管理画面で「カスタムフィールド名」を追加 | ✅ データベース上では使えるようになる(内部的に受け取れる) |
フロント側の登録フォームに自動で表示される? | ❌ 表示されない |
表示させるには? | ✅ functions.php またはプラグインでフィルターフック affiliates_custom_fields を使って明示的に追加する必要あり |
🧩 補足:カスタムフィールドの処理フロー
- 管理画面でカスタムフィールドを追加
- 例:
company_name
という新しいフィールドを追加
- 例:
- functions.php でフィルター追加 phpコピーする編集する
add_filter('affiliates_custom_fields', 'add_custom_company_field'); function add_custom_company_field($fields) { $fields['company_name'] = array( 'type' => 'text', 'label' => '会社名', 'required' => false, ); return $fields; }
- このコードを入れて初めて、登録フォームに「会社名」が表示され、登録データとして保存される
✋ よくある誤解
Q:管理画面でカスタムフィールドを追加したのにフォームに出ないのは不具合?
→ いいえ、仕様です。 WP Affiliate Manager はセキュリティ・柔軟性の観点から、フォーム項目は明示的にコードで定義しなければ表示されません。
✅ 結論(もう一度)
🔧 管理画面でカスタムフィールドを追加した後、登録フォームに出すには必ず
functions.php
などでフィルター追加が必要です。
すでに基本項目はそろっているので、今のままの登録フォームで問題なく使えると思います。不要で削除したほうがわかりやすいかと思われる項目は「STATES」 これ米国の州をプルダウンで選択する、米国以外 「outside of US」を選択させるか、意味がないのでこの項目を削除してしまう。
コメント