WordPress Logo WordPress ブログ全般の情報を取得・出力する関数

更新日:2019年01月31日

作成日:2019年01月18日

bloginfo

サイトの情報を表示させる関数で、パラメータに指定された情報をブラウザに出力します。情報を出力せず、値を変数に代入するなど値を取得・利用する場合は get_bloginfo() を使います。

bloginfo( $show )

パラメータ
$show(string):以下のキーワードを指定できます (Optional)。初期値: name
利用可能箇所
どこでも可能
パラメータ $show のキーワード(非推奨を除く)
キーワード 説明
name(初期値) 管理画面「設定」→「一般」の「サイトのタイトル」を表示します。
description 管理画面「設定」→「一般」の「キャッチフレーズ」を表示します。
admin_email 管理画面「設定」→「一般」の「メールアドレス」を表示します。
charset 使用されている文字コードを表示します(Version 3.5.0 以降は "UTF-8" を常に返します)。
version 使用中の WordPress バージョンを表示します。
html_type HTML ページの Content-Type の値(デフォルトは "text/html") を表示します。
language WordPress の言語コード(en-US や ja など)を表示します。
atom_url Atom のアドレス(URL)を表示します。
rss2_url RSS(2.0) のアドレス(URL)を表示します。
comments_atom_url コメントの RSS(2.0) のアドレス(URL)を表示します。
comments_rss2_url コメントの Atom のアドレス(URL)を表示します。
pingback_url Pingback XML-RPC ファイルの URL (xmlrpc.php) を表示します。
head 内の meta 要素で文字コードを指定する例
<meta charset="<?php bloginfo( 'charset' ); ?>">
//以下は出力結果
<meta charset="UTF-8">
ブログのタイトルを bloginfo( 'name' ) を使って <h1> タグで囲んで表示する例
(ホームへのリンクを esc_url()home_url() で出力)
<h1><a href="<?php echo esc_url( home_url( '/' ) ); ?>"><?php bloginfo( 'name' ); ?></a></h1>

廃止及び非推奨パラメータ

以下の bloginfo() 及び get_bloginfo() 関数のパラメータは現在では非推奨または廃止になっています。そのため、代わりに「推奨されているタグ(関数)」を使用するようにします。

以下の「推奨されているタグ(関数)」は値を出力しないため、bloginfo() の代わりに使用する場合は echo を使って出力します。

非推奨パラメータ 意味 推奨されているタグ(関数)
wpurl 管理画面「設定」→「一般」の「WordPress アドレス (URL)」を表示するもの site_url()
siteurl(廃止)
home (廃止)
url
管理画面「設定」→「一般」の「サイトアドレス (URL)」を表示するもの home_url()
stylesheet_url CSS (通常 style.css) ファイルの URL get_stylesheet_uri()
stylesheet_directory アクティブなテーマディレクトリーの URL get_stylesheet_directory_uri()
template_url
template_directory
アクティブなテーマのディレクトリー URL get_template_directory_uri()
get_stylesheet_directory_uri()(子テーマの場合)

get_bloginfo

パラメータ $show で指定されたサイトに関する情報を返します。パラメータに指定する文字列(キーワード)は bloginfo() と同じです。値をそのままブラウザに出力する場合は、bloginfo() を使用します。

get_bloginfo( $show, $filter )

パラメータ
  • $show(文字列):(オプション) 取得したい情報を指すキーワード(bloginfo()を参照)。初期値: 'name'
  • $filter(文字列):(オプション) 取得した値に適用するフィルターを指定するキーワード。何も指定しない(初期値: 'raw')場合は、取得した値をそのまま返します。'display' を指定すると、取得した値を wptexturize() 関数へ渡してから(呼び出し元へ)返します。
戻り値
指定されたキーワードに対応する値(サイトの情報)の文字列(空文字の可能性もあります)。
利用可能箇所
どこでも可能

サイトに関する情報の値を変数に代入したり、加工したりする場合に使用します。デフォルトでは取得する値はエスケープ処理されていないので注意が必要です。取得した値を出力する際は、第二引数に「display」を指定するか、エスケープ処理をします。

bloginfo() は適切にエスケープ処理されて出力されます。

<?php bloginfo('name'); ?>

get_bloginfo() を使って出力する場合は、エスケープ処理をするか、

<?php echo esc_html(get_bloginfo('name')); ?>

または、第二引数に「display」を指定して出力します。

<?php echo get_bloginfo('name', 'display'); ?>

bloginfo() は、以下のように get_bloginfo() の第二引数に「display」を指定したラッパー関数として「wp-includes/general-template.php」で定義されています。

<?php
  function bloginfo( $show='' ) {
    echo get_bloginfo( $show, 'display' );
  }
使用例
<?php
$my_description = get_bloginfo( 'description', 'display' );
if ( $my_description ) :
?>
<p class="description"><?php echo $underscores_template_description; ?></p>

get_option

options データベーステーブルから名前を指定してオプションの値(WordPress の設定値)を取得します。

オプションは WordPress が様々な設定や構成を保存するために使用するデータの集まりで WordPress をインストールするとデフォルトで作られる項目の一部です。

get_option( $option, $default )

パラメータ
  • $option(文字列):(必須) 取得するオプションの名前。小文字のみ。
  • $default(mixed):(オプション) データベースにオプションが存在しない場合のデフォルト値。初期値: false
戻り値
パラメータ $option で指定されたオプションの値。$option で指定されたオプションが設定されていない場合は、パラメータ $default の値かまたは false(初期値)。(注意) WordPress のバージョンによってオプションは異なります。
利用可能箇所
どこでも可能
有効なオプションの一部抜粋
オプション名 説明
siteurl(非推奨) Deprecated)WordPressのアドレス(管理画面「設定」-「一般設定」)
home サイトのアドレス(ブログのアドレス)(管理画面「設定」-「一般設定」)
blogname ブログタイトル(管理画面「設定」-「一般設定」)
blogdescription キャッチフレーズ(管理画面「設定」-「一般設定」)
admin_email メールアドレス(管理画面「設定」-「一般設定」)
posts_per_page 1ページ内の投稿数(管理画面「設定」-「表示設定」)
posts_per_rss RSS/Atomフィードで表示する最新の投稿数(管理画面「設定」-「表示設定」)
comments_per_page 1ページ内のコメント数(管理画面「設定」-「ディスカッション設定」)
thread_comments WordPress ネイティブのネストされたコメントを有効化するかどうか
date_format 日付フォーマット(管理画面「設定」-「一般設定」)
time_format 時刻フォーマット(管理画面「設定」-「一般設定」)
template 現在のテーマの名前
post_count 投稿数
show_on_front フロントページの表示(管理画面「設定」-「表示設定」)
page_on_front フロントページの表示>フロントページ(管理画面「設定」-「表示設定」)
page_for_posts フロントページの表示>投稿ページ(管理画面「設定」-「表示設定」)
gmt_offset タイムゾーン>UTCとの時差(管理画面「設定」-「一般設定」)
use_smilies 「整形」顔文字を画像に変換して表示(管理画面「設定」-「投稿設定」)
embed_size_w 「埋め込みファイルの最大サイズ」の「幅」(管理画面「設定」-「メディア」)
embed_size_h 「埋め込みファイルの最大サイズ」の「高さ」(管理画面「設定」-「メディア」)

オプションのリストは、オプション設定リファレンスにあります。また、インストールしたプラグインにより、多くのオプションが利用可能な場合があります。

<?php 
//存在しないオプション名を指定(第二引数なし)
  $no_exists_value = get_option( 'no_exists_value' );
  var_dump( $no_exists_value ); 
//真偽値 false が出力
//出力結果:bool(false)

//存在しないオプション名を指定(第二引数に「default_value」と言うデフォルト値を指定)
  $no_exists_value = get_option( 'no_exists_value', 'default_value' );
  var_dump( $no_exists_value ); 
//指定したデフォルト値「default_value」が出力
//出力結果:string(13) "default_value"
?>

get_blog_option

マルチサイトで子ブログや親ブログなど特定のブログの情報を取得します。(WordPress がマルチサイトとしてインストールされている場合のみ)

get_blog_option( $blog_id, $option, $default )

パラメータ
  • $blog_id (int) :(必須)サイトのID(整数値)。マルチサイトの場合、追加されたサイトには追加順にIDが付与され、WordPressのインストールと同時に作成されたメインのサイトのIDは「1」で、追加されたサイトは順に「2」以降のIDが付与されます。
  • $option (string):(必須)取得するオプションの名前。(get_option と同じ)
  • $default (mixed) :(オプション)オプションが存在しない場合のデフォルト値。初期値: false
戻り値
パラメータ $option で指定されたオプションの値。$option で指定されたオプションが設定されていない場合は、パラメータ $default の値かまたは false(初期値)。
//サイトID が「1」のサイトのタイトルを出力
<?php echo get_blog_option(1, 'blogname'); ?> 

サイトID の取得方法

以下は変数 $mysiteid にサイトIDを格納する4つの例です(get_id_from_blogname 参照)。

$mysiteid = $GLOBALS["blog_id"];
global $blog_id; $mysiteid = $blog_id;
global $wpdb; $mysiteid = $wpdb->blogid;
global $current_blog; $mysiteid = $current_blog->blog_id;

get_id_from_blogname

サイトのスラッグ名からサイトの ID を取得します。(マルチサイト用)

get_id_from_blogname( $slug )

パラメータ
$slug(string):スラッグ名(サブドメイン名またはディレクトリ名)
戻り値
サイトID(int→文字列?)
利用可能箇所

以下は、get_permalink() でそのページの URL を取得して、PHP の basename() でスラッグを取得し、サイトID を取得する例です。basename() の代わりに、wp_basename() でも同じです。

$site_id = get_id_from_blogname(basename(get_permalink()));