概要
get_option
関数は、WordPress のオプションテーブルから指定されたオプションの値を取得するために使用されます。この関数は、テーマやプラグインの設定の読み込み、デフォルト設定の取得、ユーザー設定の管理など、さまざまな場面で役立ちます。具体的には、以下のような機能を実装する際によく使用されます:
- プラグインの設定を取得する
- テーマのオプションを管理する
- サイトの基本設定を表示する
- ユーザーのカスタム設定を適用する
- コンテンツの表示に影響を与えるオプションを取得する
- API キーやシークレットを管理する
- プラグインやテーマのバージョンを取得する
- データベースのキャッシングを行うオプションを確認する
構文
$value = get_option( $option, $default );
パラメータ
$option
(string) — 取得したいオプションの名前(必須)。$default
(mixed) — オプションが存在しない場合に返されるデフォルト値(省略可能)。
戻り値
- オプションの値(存在する場合)、または
$default
の値(オプションが存在しない場合)。
関連する関数
使用可能なバージョン
get_option
関数は、WordPress 1.5.0 以降で使用可能です。
ワードプレスのコアファイルのパス
wp-includes/options.php
この関数のアクションでの使用可能性
アクション | 使用可能性 |
---|---|
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 | 〇 |
サンプルコード
-
オプションを取得して表示するサンプル
$site_name = get_option( 'blogname' ); echo 'サイト名: ' . esc_html( $site_name );
- このコードは、サイトの名前(設定されたブログ名)を取得し、HTML 安全に表示します。
-
デフォルト値を指定してオプションを取得するサンプル
$custom_option = get_option( 'custom_option', 'デフォルト値' ); echo 'カスタムオプション: ' . esc_html( $custom_option );
- このコードは、
custom_option
が存在しない場合に「デフォルト値」を表示します。
- このコードは、
-
テーマ設定を取得するサンプル
$theme_color = get_option( 'theme_color', '#FFFFFF' ); echo 'テーマの色: ' . esc_html( $theme_color );
- このコードは、テーマの設定から色を取得し、指定されたデフォルト(白色)を使用します。
-
ユーザー設定を読み込むサンプル
$user_settings = get_option( 'user_id_' . get_current_user_id() . '_settings' ); print_r( $user_settings );
- このコードは、現在のユーザーの設定を取得し、配列として表示します。
-
プラグイン設定を取得するサンプル
$plugin_settings = get_option( 'my_plugin_settings' ); if ( $plugin_settings ) { // 設定が存在する場合の処理 }
- このコードは、プラグインの設定を取得し、設定が存在する場合の処理を行います。
引用元ページ:
1. https://developer.wordpress.org/reference/functions/get_option/
2. https://codex.wordpress.org/Function_Reference/get_option
3. https://wp-kube.com/how-to-use-get_option-in-wordpress/
4. https://www.smashingmagazine.com/2018/02/custom-options-wordpress/
5. https://themeisle.com/blog/wordpress-options/