Header Domain Search
Ultimate Multisite の checkout 内で、利用可能なドメインから顧客が選べるようにしつつ、小さなヘッダーフォームからドメイン検索を開始したい場合は、この設定を使用します。
要件
- Ultimate Multisite がネットワークで有効化されていること。
- Multisite Ultimate Domain Seller がネットワークで有効化されていること。
- 少なくとも 1 つの有効なドメイン登録商品があり、次を満たしていること:
domain_providerが設定済みのプロバイダーに設定されている。- 対応する TLD が設定されている。例:
com、net、org。
- Domain Selection フィールドを含む有効な checkout フォーム。
Checkout フォーム
- 登録ページで使用する checkout フォームを作成または編集します。
- Username を含む、通常必要な checkout/Account フィールドを追加します。ドメインフィールドだけを含む checkout フォームは、Ultimate Multisite の検証で拒否されます。
- Domain Selection フィールドを追加します。
- フローで無料サブドメインや既存ドメインではなく登録済みドメインに重点を置く場合は、Domain Selection モードを Register Only に設定します。
- ドメイン登録商品をそのフィールドに割り当てます。
登録ページでは、例えば次のように checkout フォームを表示します:
[wu_checkout slug="domain-form"]
ヘッダーフォーム
サイトのヘッダーに小さな GET フォームを追加し、入力された検索語を domain_name として checkout ページへ送信します:
<form class="ums-header-domain-search" action="/register/" method="get">
<label class="screen-reader-text" for="ums-header-domain-search-input">Search for a domain</label>
<input id="ums-header-domain-search-input" name="domain_name" type="text" placeholder="Find your domain" autocomplete="off">
<button type="submit">Search</button>
</form>
カスタムヘッダーの JavaScript でドメインを事前選択しないでください。ヘッダーは検索語だけを渡します。Domain Seller の checkout スクリプトが ?domain_name=example を読み取り、checkout の検索ボックスに入力して利用可否検索を実行するため、顧客は返されたドメインから選択できます。
想定される動作
ヘッダーで example を検索すると、次が開きます:
/register/?domain_name=example
その後、checkout には次のような選択可能な結果が表示されます:
example.comexample.netexample.org利用不可- その他、プロバイダーが対応する TLD
利用可能な結果を選択すると、注文概要にドメイン登録商品と選択したドメイン名が含まれるはずです。
検証
- ホームページを開きます。
- 例えば
exampleのような単独の名前を検索します。 - checkout URL に
?domain_name=exampleが含まれていることを確認します。 - checkout のドメインフィールドに
exampleが入っていることを確認します。 - ドメイン候補の一覧が表示されることを確認します。
- 利用可能なドメインの 選択 をクリックします。
- 注文概要に
Domain Registration - example.comまたは選択したドメインが含まれていることを確認します。
トラブルシューティング
- 一覧が表示されない場合は、ブラウザーのネットワークタブで
admin-ajax.php?action=wu_domain_searchを確認し、空ではないdomainsまたはresultsが返っていることを確認します。 - checkout フォームの保存時に検証で失敗する場合は、Username などの必須 Account フィールドを追加します。
- ドメインを選択してもカートが更新されない場合は、
window.wu_checkout_formが存在し、Domain Seller の checkout アセットが checkout ページに読み込まれていることを確認します。