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

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

「関数リファレンス/dynamic sidebar」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(en:Function Reference/dynamic_sidebar 11:17, 28 September 2009 Ramiy 版を翻訳用にコピー)
 
(言語間リンクの誤記訂正。)
 
(4人の利用者による、間の10版が非表示)
1行目: 1行目:
== Description ==
+
== 説明 ==
  
This function calls each of the active widget callbacks in order, which prints the markup for the sidebar. If you have more than one sidebar, you should give this function the name or number of the sidebar you want to print. This function returns true on success and false on failure.
+
この関数はアクティブな[[WordPress ウィジェット|ウィジェット]]コールバック関数を順に呼び出し、[[サイドバー]]に表示します。複数のサイドバーがある場合、表示するサイドバーの番号または名前を知らせる必要があります。この関数が正しく実行されると true を返し、失敗すると false を返します。
  
The return value should be used to determine whether to display a static sidebar. This ensures that your theme will look good even when the Widgets plug-in is not active.
+
静的なサイドバーを表示するかどうかを決定するのに、返り値を使用すべきです。こうすることで、ウィジェットプラグインがアクティブでない場合にも、テーマがきちんと表示されるようにできます。
  
If your sidebars were registered by number, they should be retrieved by number. If they had names when you registered them, use their names to retrieve them.
+
サイドバーを番号で登録している場合、番号で呼び出します。名前で登録している場合は、名前で呼び出します。
  
== Usage ==
+
== 使い方 ==
  
%%% <?php dynamic_sidebar( $number ); ?> %%%
+
<?php dynamic_sidebar( $number ); ?>
  
== Parameters ==
+
== パラメータ ==
  
{{Parameter|$number|int/string|Name or ID of dynamic sidebar.|optional|1}}
+
{{Parameter|$number|整数/文字列|サイドバーの名前または ID。|オプション|1}}
  
== Return Value ==
+
== 返り値 ==
  
; (boolean) : True, if widget sidebar was found and called. False if not found or not called.
+
; (真偽値) : サイドバーの中にウィジェットが登録されているときは true を返し、ウィジェットが登録されていないか、サイドバーが見つからないときは false を返します。
  
==Examples==
+
== 用例 ==
  
Here is the recommended use of this function:
+
致命的なエラーを防ぐために、以下のように使用することをお勧めします。
  
 
<pre>
 
<pre>
<ul id="sidebar">
+
<?php if ( is_active_sidebar( 'left-sidebar' ) ) : ?>
<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar() ) : ?>
+
<ul id="sidebar">
    <li>{static sidebar item 1}</li>
+
<?php dynamic_sidebar( 'left-sidebar' ); ?>
    <li>{static sidebar item 2}</li>
+
</ul>
<?php endif; ?>
+
<?php endif; ?>
</ul>
+
 
</pre>
 
</pre>
  
==Multiple Sidebars==
+
<pre>
 +
<ul id="sidebar">
 +
<?php dynamic_sidebar( 'right-sidebar' ); ?>
 +
</ul>
 +
</pre>
  
You can load a specific sidebar by either their name (if given a string) or ID (if given an integer). For example, <tt>dynamic_sidebar('top_menu')</tt> will present a sidebar registered with <tt>register_sidebar(array('name'=>'top_menu',))</tt>.
+
<pre>
 +
<ul id="sidebar">
 +
<?php if ( ! dynamic_sidebar() ) : ?>
 +
<li>{静的サイドバー項目 No.1}</li>
 +
<li>{静的サイドバー項目 No.2}</li>
 +
<?php endif; ?>
 +
</ul>
 +
</pre>
  
Using ID's ( <tt>dynamic_sidebar(1)</tt> ) is easier in that you don't need to name your sidebar, but they are harder to figure out which is which without looking into your <tt>functions.php</tt> file or in the widgets administration panel and thus make your code less readable. Note that ID's begin at 1.
+
=== 「Twenty Ten」テーマ内(WordPress 3.0 以降) ===
  
== Change Log ==
+
* {{Trac|wp-content/themes/twentyten/sidebar.php}}
 +
* {{Trac|wp-content/themes/twentyten/sidebar-footer.php}}
  
Since: 2.2.0
 
  
== Source File ==
+
== 複数のサイドバー ==
  
<tt>dynamic_sidebar()</tt> is located in {{Trac|wp-includes/widgets.php}}.
+
名前(<tt>$number</tt> を文字列で指定した場合)、または ID(整数値で指定、または省略した場合)のいずれかで特定のサイドバーをロードすることができます。例として、<code>register_sidebar( array( 'name' => 'top_menu' ) )</code> という定義でサイドバーを登録してある場合、<code>dynamic_sidebar( 'top_menu' )</code> という記述で呼び出すことができます。
  
== Further Reading ==
+
ID を使って呼び出す場合( <code>dynamic_sidebar( 1 )</code> )、サイドバーに名前をつけておく必要はありませんが、どのサイドバーを呼び出しているのか把握しにくくなります。その場合、<tt>functions.php</tt> ファイルやウィジェット管理画面を見なければなりません。ID は 1 から始まることに注意してください。
  
* [http://www.prelovac.com/vladimir/wordpress-theme-flexibility-with-dynamic-sidebars WordPress theme flexibility with dynamic sidebars]
+
<tt>register_sidebar()</tt> WordPress 関数を呼び出すときに ID として文字列を使うと、コードの可読性を高められます。ID は英小文字と数字とし、空白を含んではいけません。他に <tt>-</tt>(ハイフン)と <tt>_</tt>(アンダースコア)も使えます。ID はユニークにするとともに、サイドバーの名前と同じではいけません。固有の ID を使えばサイドバーの名前が翻訳可能になります。
  
{{原文|Function Reference/dynamic_sidebar|78546}}<!-- 11:17, 28 September 2009 Ramiy 版 -->
+
<pre>// $text_domain の有効な値は __() WordPress 関数を見てください。
 +
register_sidebar( array(
 +
    'id'          => 'top-menu',
 +
    'name'        => __( 'Top Menu', $text_domain ),
 +
    'description' => __( 'This sidebar is located above the age logo.', $text_domain ),
 +
) );
 +
</pre>
  
== Related ==
+
これで読みやすい ID を使って <tt>dynamic_sidebar( 'top-menu' )</tt> という呼び出し方が可能になります。
  
 +
== 変更履歴 ==
 +
 +
新規導入: [[Version 2.2|2.2.0]]
 +
 +
== ソースファイル ==
 +
 +
<tt>dynamic_sidebar()</tt> は {{Trac|wp-includes/widgets.php}} にあります。
 +
 +
== 合わせて読みたい記事 ==
 +
 +
* [http://www.prelovac.com/vladimir/wordpress-theme-flexibility-with-dynamic-sidebars WordPress theme flexibility with dynamic sidebars]
 +
* [http://wordpress.org/support/topic/the-meaning-of-spitting-out-widgets The meaning of "spitting out" widgets]
 +
 +
== 関連資料 ==
 +
 +
{{Sidebar Tags}}
 +
<br>
 
{{Widget Tags}}
 
{{Widget Tags}}
  
 
{{Tag Footer}}
 
{{Tag Footer}}
  
[[Category:Functions]]
+
{{DEFAULTSORT:Dynamic_sidebar}}
[[Category:Widgets]]
+
[[Category:ウィジェット]]
 +
[[Category:wp2.2]]
 +
 
 +
{{原文|Function Reference/dynamic_sidebar|150438}} <!-- 10:45, 30 March 2015 Ramiy 版 -->
  
 
[[en:Function Reference/dynamic_sidebar]]
 
[[en:Function Reference/dynamic_sidebar]]
 +
[[ru:Справочник по функциям/dynamic_sidebar]]

2015年8月26日 (水) 23:55時点における最新版

説明

この関数はアクティブなウィジェットコールバック関数を順に呼び出し、サイドバーに表示します。複数のサイドバーがある場合、表示するサイドバーの番号または名前を知らせる必要があります。この関数が正しく実行されると true を返し、失敗すると false を返します。

静的なサイドバーを表示するかどうかを決定するのに、返り値を使用すべきです。こうすることで、ウィジェットプラグインがアクティブでない場合にも、テーマがきちんと表示されるようにできます。

サイドバーを番号で登録している場合、番号で呼び出します。名前で登録している場合は、名前で呼び出します。

使い方

<?php dynamic_sidebar( $number ); ?>

パラメータ

$number
整数/文字列) (オプション) サイドバーの名前または ID。
初期値: 1

返り値

(真偽値) 
サイドバーの中にウィジェットが登録されているときは true を返し、ウィジェットが登録されていないか、サイドバーが見つからないときは false を返します。

用例

致命的なエラーを防ぐために、以下のように使用することをお勧めします。

<?php if ( is_active_sidebar( 'left-sidebar' ) ) : ?>
	<ul id="sidebar">
		<?php dynamic_sidebar( 'left-sidebar' ); ?>
	</ul>
<?php endif; ?>
<ul id="sidebar">
	<?php dynamic_sidebar( 'right-sidebar' ); ?>
</ul>
<ul id="sidebar">
<?php if ( ! dynamic_sidebar() ) : ?>
	<li>{静的サイドバー項目 No.1}</li>
	<li>{静的サイドバー項目 No.2}</li>
<?php endif; ?>
</ul>

「Twenty Ten」テーマ内(WordPress 3.0 以降)


複数のサイドバー

名前($number を文字列で指定した場合)、または ID(整数値で指定、または省略した場合)のいずれかで特定のサイドバーをロードすることができます。例として、register_sidebar( array( 'name' => 'top_menu' ) ) という定義でサイドバーを登録してある場合、dynamic_sidebar( 'top_menu' ) という記述で呼び出すことができます。

ID を使って呼び出す場合( dynamic_sidebar( 1 ) )、サイドバーに名前をつけておく必要はありませんが、どのサイドバーを呼び出しているのか把握しにくくなります。その場合、functions.php ファイルやウィジェット管理画面を見なければなりません。ID は 1 から始まることに注意してください。

register_sidebar() WordPress 関数を呼び出すときに ID として文字列を使うと、コードの可読性を高められます。ID は英小文字と数字とし、空白を含んではいけません。他に -(ハイフン)と _(アンダースコア)も使えます。ID はユニークにするとともに、サイドバーの名前と同じではいけません。固有の ID を使えばサイドバーの名前が翻訳可能になります。

// $text_domain の有効な値は __() WordPress 関数を見てください。
register_sidebar( array(
    'id'          => 'top-menu',
    'name'        => __( 'Top Menu', $text_domain ),
    'description' => __( 'This sidebar is located above the age logo.', $text_domain ),
) );

これで読みやすい ID を使って dynamic_sidebar( 'top-menu' ) という呼び出し方が可能になります。

変更履歴

新規導入: 2.2.0

ソースファイル

dynamic_sidebar()wp-includes/widgets.php にあります。

合わせて読みたい記事

関連資料

サイドバー: 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 » Function Reference/dynamic_sidebar最新版との差分