wp_timezone_choice()


WordPressのwp_timezone_choice()関数は、タイムゾーンを選択するためのドロップダウンメニューを生成するために使用されます。この関数は、設定ページやカスタムフォームでタイムゾーンを選択する際に便利です。

構文

wp_timezone_choice( string $selected_zone, string $locale = null );

引数の説明:

  • $selected_zone (string) — 選択されたタイムゾーンを指定します。デフォルトは空です。
  • $locale (string) — ロケールを指定します。デフォルトはnullで、サイトのロケールが使用されます。

例1: 基本的なタイムゾーンの選択

この例では、基本的なタイムゾーンの選択ドロップダウンを表示します。

<?php echo wp_timezone_choice(); ?>

例2: 特定のタイムゾーンを選択

この例では、特定のタイムゾーンをデフォルトで選択します。

<?php echo wp_timezone_choice('America/New_York'); ?>

例3: ロケールを指定してタイムゾーンを選択

この例では、ロケールを指定してタイムゾーンの選択ドロップダウンを表示します。

<?php echo wp_timezone_choice(null, 'ja'); ?>

例4: カスタムフォームでの使用

この例では、カスタムフォーム内でタイムゾーンを選択するドロップダウンを表示します。

<form method="post"><select name="timezone"><?php echo wp_timezone_choice(); ?></select></form>

例5: ユーザープロファイルでのタイムゾーン選択

この例では、ユーザープロファイルページでタイムゾーンを選択するドロップダウンを表示します。

<?php echo wp_timezone_choice(get_user_meta(get_current_user_id(), 'timezone', true)); ?>

例6: タイムゾーンの選択を保存

この例では、選択されたタイムゾーンを保存する方法を示します。

<?php if (isset($_POST['timezone'])) { update_user_meta(get_current_user_id(), 'timezone', sanitize_text_field($_POST['timezone'])); } ?>

例7: タイムゾーンの選択をフィルタリング

この例では、特定のタイムゾーンのみを表示するようにフィルタリングします。

<?php echo wp_timezone_choice(null, null, array('UTC', 'America/New_York')); ?>

例8: タイムゾーンの選択をカスタマイズ

この例では、タイムゾーンの選択ドロップダウンにカスタムクラスを追加します。

<?php echo str_replace('<select', '<select class="custom-timezone"', wp_timezone_choice()); ?>

注意点

  • タイムゾーンの選択は、ユーザーの設定やサイトの設定に影響を与える可能性があります。
  • ロケールを指定する場合、対応する翻訳が利用可能であることを確認してください。

関連機能: