• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

「テーマのウィジェット対応」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(新しいウィジェットエリアを表示するには)
31行目: 31行目:
 
</pre>
 
</pre>
  
=== ウィジェットとウィジェットエリアを表示するには ===
+
=== 新しいウィジェットエリアを表示するには ===
 +
 
 +
 
 +
sidebar.phpファイルなどのテーマファイルにコードを直接追加するか、
 +
functions.phpファイル内のフックでカスタム関数を使用することで、
 +
新しいウィジェットエリアを表示することができます。
 +
 
 +
 
 +
以下は、親テーマまたは子テーマにあなたの新しいウィジェットエリアを追加する一般的な方法のサンプルコードです。
 +
 
 +
<pre>
 +
<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>
 +
<div id="primary-sidebar" class="primary-sidebar widget-area" role="complementary">
 +
<?php dynamic_sidebar( 'sidebar-1' ); ?>
 +
</div><!-- #primary-sidebar -->
 +
<?php endif; ?>
 +
</pre>
 +
 
 +
上記のコードは、あなたのsidebar.phpファイルに追加できます。有効化されている場合、ウィジェットの内容を表示します。
 +
 
 +
ウィジェットを出力する関数。
 +
<pre>
 +
<?php dynamic_sidebar( 'sidebar-1' ); ?>
 +
</pre>
 +
 
 +
上記のコードは、'sidebar-1'のID値で登録されたウィジェットを表示します。あなたのサイトにウィジェットを表示する場合、ウィジェットを登録したときに指定したID値と’sidebar-1'を置き換えることを忘れないでください。
 +
 
 
ウィジェットとウィジェットエリアを表示するようプログラムする方法については[WordPress_ウィジェット_API ウィジェット API] ページを参照してください。
 
ウィジェットとウィジェットエリアを表示するようプログラムする方法については[WordPress_ウィジェット_API ウィジェット API] ページを参照してください。
  
 
プログラマーでない方は、[[WordPress ウィジェット]]/[[:en:WordPress_Wdigets|en]]ページをご覧ください。
 
プログラマーでない方は、[[WordPress ウィジェット]]/[[:en:WordPress_Wdigets|en]]ページをご覧ください。
 
  
 
==テーマ内の複数サイドバーすべてを動的ウィジェットエリアにするには==
 
==テーマ内の複数サイドバーすべてを動的ウィジェットエリアにするには==

2015年6月7日 (日) 15:41時点における版

この項目「テーマのウィジェット対応」は、翻訳チェック待ちの項目です。加筆、訂正などを通して、Codex ドキュメンテーションにご協力下さい。


テーマのウィジェット対応とは

ウィジェット対応(Widgetizing)とは、テーマ内にウィジェットやウィジェットエリアを実装するプロセスのことです。

ウィジェットの登録

以下をテーマの functions.php ファイルに追加してください。

<?php
/**
 * Register our sidebars and widgetized areas.
 *
 */
function arphabet_widgets_init() {

	register_sidebar( array(
		'name' => 'Home right sidebar',
		'id' => 'home_right_1',
		'before_widget' => '<div>',
		'after_widget' => '</div>',
		'before_title' => '<h2 class="rounded">',
		'after_title' => '</h2>',
	) );
}
add_action( 'widgets_init', 'arphabet_widgets_init' );
?>

新しいウィジェットエリアを表示するには

sidebar.phpファイルなどのテーマファイルにコードを直接追加するか、 functions.phpファイル内のフックでカスタム関数を使用することで、 新しいウィジェットエリアを表示することができます。


以下は、親テーマまたは子テーマにあなたの新しいウィジェットエリアを追加する一般的な方法のサンプルコードです。

<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>
	<div id="primary-sidebar" class="primary-sidebar widget-area" role="complementary">
		<?php dynamic_sidebar( 'sidebar-1' ); ?>
	</div><!-- #primary-sidebar -->
<?php endif; ?>

上記のコードは、あなたのsidebar.phpファイルに追加できます。有効化されている場合、ウィジェットの内容を表示します。

ウィジェットを出力する関数。

<?php dynamic_sidebar( 'sidebar-1' ); ?>

上記のコードは、'sidebar-1'のID値で登録されたウィジェットを表示します。あなたのサイトにウィジェットを表示する場合、ウィジェットを登録したときに指定したID値と’sidebar-1'を置き換えることを忘れないでください。

ウィジェットとウィジェットエリアを表示するようプログラムする方法については[WordPress_ウィジェット_API ウィジェット API] ページを参照してください。

プログラマーでない方は、WordPress ウィジェット/enページをご覧ください。

テーマ内の複数サイドバーすべてを動的ウィジェットエリアにするには

register_sidebar() の代わりに register_sidebars(n) を使用してください。n はサイドバーの数です。そして 1 から始まる適切な数字を dynamic_sidebar() 関数に入れれます (こうした関数の使い方は他にもいくつかあります。API を参照してください)。

数字ではなくサイドバー名を与えることもできます。各テーマ用に保存した別々のセットをメンテナンスできます。プラグインについてもっと知りたければ API をお読みください。

関連資料

サイドバー: is_active_sidebar(), is_dynamic_sidebar(), dynamic_sidebar(), register_sidebars(), register_sidebar(), unregister_sidebar(), wp_register_sidebar_widget() / en, wp_unregister_sidebar_widget() / en, wp_get_sidebars_widgets() / en, wp_set_sidebars_widgets() / en,
ウィジェット API: is_active_widget(), the_widget(), register_widget(), unregister_widget() / en, wp_register_widget_control() / en, wp_unregister_widget_control() / en, wp_convert_widget_settings() / en, wp_get_widget_defaults() / en, wp_widget_description() / en


最新英語版: WordPress Codex » Widgetizing_Themes最新版との差分