confirm_blog_signup()
は、新規サイトの作成手続きが完了した際に、ユーザーへ「サイトが登録され、アクティベーション待ち」であることを知らせるメッセージを表示します。
サイトのドメイン、パス、タイトル、ユーザー情報(ユーザー名、メールアドレス)、およびオプションのメタ情報を受け取り、適切な案内文と共にサイト URL やログインへのリンクを出力します。
これにより、ユーザーは登録後の手順が明確になり、サイトのアクティベーションを促す役割を果たします
基本構文
基本的な構文は以下の通りです。
<?php
confirm_blog_signup(
$domain, // サイトのドメイン
$path, // サイトのパス
$blog_title, // サイトタイトル
$user_name, // オプション:ユーザー名【空文字列がデフォルト】
$user_email, // オプション:ユーザーのメールアドレス【空文字列がデフォルト】
$meta // オプション:追加メタ情報(配列)
);
?>
指定された $domain
と $path
からサイト URL を生成し、サイトタイトルをリンクにして表示します。
ユーザーへは「このサイトを使用する前にサイトを有効化する必要がある」といった注意文と、登録したメールアドレスへのメール確認を促すメッセージが出力されます。
また、サイト登録後に一定期間内にサイトを有効化しない場合の再登録の注意も含まれています。
引き数と戻り値
引き数 | 型 | 説明 |
---|---|---|
$domain | string , 必須 | サイトのドメイン(例:”example.com”)。 |
$path | string , 必須 | サイトのパス(例:”/blog/”)。 |
$blog_title | string , 必須 | サイトのタイトル/ブログ名。 |
$user_name | string , オプション | サイト登録者のユーザー名。省略時は空文字列となります。 |
$user_email | string , オプション | サイト登録者のメールアドレス。省略時は空文字列。 |
$meta | array , オプション | validate_blog_signup() の add_signup_meta フィルターで追加された任意のメタ情報。省略時は空の配列。 |
戻り値 | 型 | 説明 |
---|---|---|
なし | この関数は内部でメッセージを出力(echo )するため、戻り値はありません。出力された HTML によってサイト登録確認がユーザーに伝えられます 。 |
使用例
基本的なサイト登録確認メッセージの出力例
<?php
$domain = 'example.com';
$path = '/blog/';
$blog_title = 'My New Blog';
$user_name = 'john_doe';
$user_email = 'john@example.com';
$meta = array(); // 追加メタ情報があれば指定
confirm_blog_signup(
$domain,
$path,
$blog_title,
$user_name,
$user_email,
$meta
);
?>
上記コードでは、example.com/blog/
に作成された「My New Blog」というサイトについて、登録完了メッセージが表示されます。メッセージ内には、サイトタイトルにリンクが設定され、ユーザーに対して登録したメールアドレスを確認し、メール内のアクティベーションリンクをクリックするよう促す文言が出力されます。
注意点
ローカライズへの対応
出力メッセージは __()
や printf()
を利用しているため、テーマやプラグインで翻訳ファイルが整備されていれば多言語対応が可能です。
ユーザーへの注意喚起
サイトを有効化する期限や、メールが届かない場合の対処法(迷惑メールフォルダの確認など)の注意が記載されているため、ユーザーが混乱しないよう文言の調整が必要な場合があります。
フィルターフック
関数内部で do_action('signup_finished')
が呼び出され、他のプラグインやテーマで出力内容のカスタマイズが可能です。これにより、必要に応じた追加メッセージや処理をフックできる点に留意してください。
良く一緒に使われる関数
switch_to_blog()
if ( $blog_id ) {
switch_to_blog( $blog_id ); // サイト固有の URL を取得する処理…
restore_current_blog();
}
マルチサイト環境で対象サイトのコンテキストに切り替え、そのサイト固有の情報(例:ホームURL、ログインURL)を取得するために利用されます。
home_url()
$site_url = home_url( '/' );
現在のサイトのホームURLを取得します。confirm_blog_signup()
でサイトタイトルにリンクを付与する際に使用されることがあります。
wp_login_url()
$login_url = wp_login_url();
サイトへのログイン URL を生成し、ユーザーに対しログイン手順の案内をする際に使用されます。
想定されるトラブル
メールアドレスが誤って入力されている場合
ユーザーが誤ったメールアドレスを入力すると、アクティベーションメールが届かず登録が完了しなかったと誤解される可能性があります。
解決方法
サインアップフォーム内でメールアドレスのバリデーションを強化し、入力内容を確認する仕組みを導入しましょう。
ドメイン・パスの誤生成によりリンクエラーが発生する場合
$domain
や $path
の値が不適切な場合、生成される URL に誤りが生じ、ユーザーがサイトにアクセスできなくなる可能性があります。
解決方法
サインアップ処理前に、対象のドメインおよびパスが正しく設定されているか確認を行い、エラーチェックを実装することが推奨されます。
Q&A
まとめ
confirm_blog_signup()
は、新しいサイト(ブログ)の登録完了時にユーザーへ確認メッセージを出力するための重要なテンプレート関数です。
指定されたドメイン、パス、ブログタイトル、ユーザー名およびメールアドレスを元に、サイトの URL とともに、アクティベーションの手順を明確に伝えます。
これにより、登録後のユーザーエクスペリエンスが向上し、サイトの有効化を円滑に進めることが可能となります。関連する関数群(switch_to_blog()
, home_url()
, wp_login_url()
)との組み合わせにより、柔軟なカスタマイズやエラーチェックが実装可能です。
コメント