register_sidebar

説明

string register_sidebar( [ mixed $args = array() ] )
サイドバーを登録する。

パラメータ

  • $args
    サイドバーの属性情報を連想配列または文字列で指定。属性情報の内容は次の通り。
    属性名意味省略時の値
    nameサイドバー名__('Sidebar #n')
    idサイドバーIDsidebar-#n
    descriptionサイドバーの説明''
    classサイドバーに追加するクラス名''
    before_widgetウィジェットの前タグ<li id="%1$s" class="widget %2$s">
    after_widgetウィジェットの後タグ</li>\n
    before_titleサイドバータイトルの前タグ<h2 class="widgettitle">
    after_titleサイドバータイトルの後タグ</h2>\n
    before_sidebar[5.6.0]サイドバーの前タグ''
    after_sidebar[5.6.0]サイドバーの後タグ''
    ※#nにはサイドバーのシリアル番号が入る(例:登録時に2つのサイドバーが登録されている場合は3が入る)。

返り値

サイドバーIDを返す。

注意

内部では add_theme_support( 'widgets' )を実行し、テーマで「ウィジェット」メニューが有効になる。
デフォルトではタイトルは<h2>タグになるので、ページのHTML構造にあわせてパラメータ$argsの'before_title'と'after_title'に適切なタグを指定する。

[4.2.0]パラメータで'id'要素を指定することが推奨となった。

[5.6.0]パラメータ$argsに'before_sidebar'と'after_sidebar'が追加された。


使用例

  • サイドバーを登録する。
    <?php register_sidebar( ); ?>
  • 属性を指定してサイドバーを登録する。
    <?php register_sidebar( array( 'name'=>'メインサイドバー' ) ); ?>

フィルター

[5.3.0]パラメータとデフォルト値をマージする前に'register_sidebar_defaults'フィルターを呼び出す。パラメータ$defaultsにはデフォルト値の連想配列が格納されている。
$sidebar = wp_parse_args( $args, apply_filters( 'register_sidebar_defaults', $defaults ) );

アクション

[3.0.0]本関数の終了直前に'register_sidebar'アクションを呼び出す。パラメータ$sidebarは本関数のパラメータに未指定の規定値を加えた内容が格納される。
do_action( 'register_sidebar', $sidebar );

ソースファイル

/wp-includes/widgets.php

最終更新 : 2020年12月17日 16:48



お勧め

5.3の新機能:日付とタイムゾーン(2019年10月2日 更新)

WordPress 5.3 Beta 1」に記載されていた「Time/Date component fixes」という見出し。開発者向として新しい関数の追加や多くのバグが修正されたとなっており、チェックせざるを得ない。

PHPとMySQLのバージョンを確認(2013年9月11日 更新)

先日、WordPressで構築されたサイトについて最新版へのバージョンアップを依頼される。使用されていたWordPressはバージョン2.xということで、最新版へバージョンアップできるのか、PHPとMySQLのバージョンを確認することになった。

ACF(Advanced Custom Fields)向けにデータをインポートした時のメモ(2023年7月11日 更新)

ACFを採用するサイトにデータをインポートする際、ほとんどのことはwww.advancedcustomfields.comに記載されていたのだが、いくつかわからないことがあった。ここでは、その時に調べたことをメモしておく。

不要なプラグインを読み込まない(2023年6月2日 更新)

稼働中のサーバーにてバックグラウンドで何か処理しようとコマンドラインのプログラムを作る際、効率化や誤動作のリスクを考えると不要なプラグインはロードしないようにしたい。そんなわけで設定内容(データベース)は変更せず、特定のプラグインをロードしないようにできないか考えてみた。

Align widgets horizontally:プラグイン作ってみました(2024年2月28日 更新)

ほぼ毎日何度も見ているダッシュボードページ。自分好みに各ウィジェットの場所を配置しているものの、何かすっきりしない。そこでふと思ったのが、ウィジェットを横並びにできれば隣り合うウィジェットの並びがガタガタしなくなるのでは!?