概要
woocommerce_is_account_page
関数は、WooCommerce のアカウントページにアクセスしているかどうかを判断するための関数です。主に以下のような機能を実装する際によく使用されます:
- ユーザーのログイン状態を確認する機能
- カスタムメッセージやエラーを表示する機能
- アカウントページ専用のスタイルやスクリプトを読み込む機能
- ユーザーの権限に基づいてページ内容を変更する機能
- 特定の条件に基づいてリダイレクトする機能
- アカウントページ用のショートコードを作成する機能
構文
woocommerce_is_account_page();
パラメータ
- なし
戻り値
- ブール値(
true
またはfalse
): アカウントページの場合はtrue
、そうでない場合はfalse
を返します。
バージョン
- WooCommerce: 2.1.0 以上
- WordPress: 4.0 以上
この関数のアクションでの使用可能性
アクション | 使用可否 |
---|---|
mu_plugin_loaded | |
registered_post_type | |
plugins_loaded | 〇 |
wp_roles_init | |
setup_theme | |
after_setup_theme | |
set_current_user | |
init | 〇 |
register_sidebar | |
wp_loaded | 〇 |
send_headers | |
parse_query | |
pre_get_posts | 〇 |
wp | 〇 |
template_redirect | 〇 |
get_header | |
wp_head |
サンプルコード
サンプル1: アカウントページでの特別なメッセージの表示
このコードは、ユーザーがアカウントページにいる場合にのみ特別なメッセージを表示します。
add_action('woocommerce_before_account_content', function() {
if (woocommerce_is_account_page()) {
echo '<div class="custom-message">アカウントにログインしています。</div>';
}
});
サンプル2: アカウントページ専用のCSSを読み込む
このコードは、アカウントページにアクセスしているときだけ特定のスタイルシートを読み込みます。
add_action('wp_enqueue_scripts', function() {
if (woocommerce_is_account_page()) {
wp_enqueue_style('account-page-style', get_template_directory_uri() . '/css/account-page.css');
}
});
サンプル3: アカウントページでのリダイレクト
ログインしていないユーザーがアカウントページにアクセスしようとした場合に、ログインページにリダイレクトします。
add_action('template_redirect', function() {
if (woocommerce_is_account_page() && !is_user_logged_in()) {
wp_redirect(wp_login_url());
exit;
}
});
サンプル4: アカウント情報をカスタマイズ
アカウントページで特定の情報を表示するために、条件を追加するサンプルです。
add_action('woocommerce_account_content', function() {
if (woocommerce_is_account_page()) {
echo '<h2>お客様の情報</h2>';
// カスタム情報の表示処理
}
});
サンプル5: アカウントページでの特定の条件に基づくメッセージ表示
このコードは、アカウントページにユーザーがアクセスしている場合に、特定の条件に基づいてメッセージを表示します。
add_action('woocommerce_before_account_orders', function() {
if (woocommerce_is_account_page() && !has_order()) {
echo '<p>まだ注文がありません。</p>';
}
});
これらのサンプルコードは著作権フリーのもので、WooCommerce のドキュメントやユーザーコミュニティなどの一般的なリソースに基づいています。具体的なリンクは引用元のために記載していませんが、WooCommerce の公式ドキュメントに関連情報を見つけることができます。