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

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

「テンプレートタグ/the widget」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(参考: Template:BrowseSource 引数変更に伴い修正。)
(訳追加)
 
(同じ利用者による、間の4版が非表示)
1行目: 1行目:
{{Stub|
 
* 英語版はまだないので[[#関連|ソース]]から書き起こしています。使い方や設定方法など間違っていたら遠慮なく手を入れてください。(直に書き換えても、ノートにメモってくれても OK です)
 
* 説明や使用例を追加してください。}}
 
 
 
== 説明 ==
 
== 説明 ==
  
テンプレートタグ '''the_widget()''' は、任意のウィジェットを出力します。[[テンプレート]]のどこでも使えます。
+
テンプレートタグ '''the_widget()''' は、サイドバーの外側に任意のウィジェットを表示します。[[テンプレート]]のどこでも使えます。
  
 
== 使い方 ==
 
== 使い方 ==
  
  <?php the_widget($widget, $instance, $args); ?>
+
  <?php the_widget( $widget, $instance, $args ); ?>
  
 
== パラメータ ==
 
== パラメータ ==
 
+
{{Parameter|$widget|string|ウィジェットの PHP クラス名。 WordPress でインクルードするウィジェットのクラス:
; widget
+
: (文字列) ウィジェットの PHP クラス名
+
 
:* WP_Widget_Archives -- [[#Archives widget|アーカイブ]]
 
:* WP_Widget_Archives -- [[#Archives widget|アーカイブ]]
 
:* WP_Widget_Calendar -- [[#Calendar widget|カレンダー]]
 
:* WP_Widget_Calendar -- [[#Calendar widget|カレンダー]]
27行目: 21行目:
 
:* WP_Widget_Tag_Cloud -- [[#Tag Cloud widget|タグクラウド]]
 
:* WP_Widget_Tag_Cloud -- [[#Tag Cloud widget|タグクラウド]]
 
:* WP_Widget_Text -- [[#Text widget|テキスト]]
 
:* WP_Widget_Text -- [[#Text widget|テキスト]]
; instance
+
:* WP_Nav_Menu_Widget}}
: (配列または[[テンプレートタグ/タグパラメータの渡し方#クエリ文字列型パラメータのタグ|クエリ文字列型]]) ウィジェットのインスタンス設定(下記の各ウィジェットを参照)
+
 
; args
+
 
: (配列または[[テンプレートタグ/タグパラメータの渡し方#クエリ文字列型パラメータのタグ|クエリ文字列型]]) ウィジェットのサイドバー引数
+
{{Parameter|$instance|array&#124;string|配列または[[テンプレートタグ/タグパラメータの渡し方#クエリ文字列型パラメータのタグ|クエリ文字列型]]) ウィジェットのインスタンス設定(下記の各ウィジェットを参照)|オプション|<tt>array()</tt>}}
 +
 
 +
{{Parameter|$args|array&#124;string|配列または[[テンプレートタグ/タグパラメータの渡し方#クエリ文字列型パラメータのタグ|クエリ文字列型]]) ウィジェットのサイドバー引数 空の場合は、デフォルトに:
 +
 
 
:; before_widget
 
:; before_widget
 
:: (文字列) ウィジェットの前に出力するテキストまたは HTML
 
:: (文字列) ウィジェットの前に出力するテキストまたは HTML
43行目: 40行目:
 
:: (文字列) 見出しの後ろに出力するテキストまたは HTML
 
:: (文字列) 見出しの後ろに出力するテキストまたは HTML
 
:: 初期値: <nowiki></h2></nowiki>
 
:: 初期値: <nowiki></h2></nowiki>
: 例: <pre><?php the_widget('WP_Widget_Pages', '', 'before_title=<h3>&after_title=</h3>'); ?></pre>
+
|オプション|<tt>array()</tt>}}
 +
 
  
 
<div id="Archives_widget">
 
<div id="Archives_widget">
51行目: 49行目:
 
月別アーカイブリストを出力します。
 
月別アーカイブリストを出力します。
  
  <?php the_widget('WP_Widget_Archives', $instance, $args); ?>
+
  <?php the_widget( 'WP_Widget_Archives', $instance, $args ); ?>
  
 
* ウィジェットのクラス名: <code>widget_archive</code>
 
* ウィジェットのクラス名: <code>widget_archive</code>
62行目: 60行目:
  
 
初期設定のまま使用:
 
初期設定のまま使用:
  <?php the_widget('WP_Widget_Archives'); ?>
+
  <?php the_widget( 'WP_Widget_Archives' ); ?>
  
 
ドロップダウン形式で月別アーカイブリストを出力:
 
ドロップダウン形式で月別アーカイブリストを出力:
  <?php the_widget('WP_Widget_Archives', 'dropdown=1'); ?>
+
  <?php the_widget( 'WP_Widget_Archives', 'dropdown=1' ); ?>
  
 
<div id="Calendar_widget">
 
<div id="Calendar_widget">
73行目: 71行目:
 
カレンダーを出力します。
 
カレンダーを出力します。
  
  <?php the_widget('WP_Widget_Calendar', $instance, $args); ?>
+
  <?php the_widget( 'WP_Widget_Calendar', $instance, $args ); ?>
  
 
* ウィジェットのクラス名: <code>widget_calendar</code>
 
* ウィジェットのクラス名: <code>widget_calendar</code>
90行目: 88行目:
 
カテゴリーリストを出力します。
 
カテゴリーリストを出力します。
  
  <?php the_widget('WP_Widget_Categories', $instance, $args); ?>
+
  <?php the_widget( 'WP_Widget_Categories', $instance, $args ); ?>
  
 
* ウィジェットのクラス名: <code>widget_categories</code>
 
* ウィジェットのクラス名: <code>widget_categories</code>
105行目: 103行目:
  
 
ドロップダウンリストで、投稿数も表示する:
 
ドロップダウンリストで、投稿数も表示する:
  <?php the_widget('WP_Widget_Categories', 'dropdown=1&count=1'); ?>
+
  <?php the_widget( 'WP_Widget_Categories', 'dropdown=1&count=1' ); ?>  
  
 
<div id="Links_widget">
 
<div id="Links_widget">
113行目: 111行目:
 
リンクリストを出力します。
 
リンクリストを出力します。
  
  <?php the_widget('WP_Widget_Links', $instance, $args); ?>
+
  <?php the_widget( 'WP_Widget_Links', $instance, $args ); ?>
  
 
* ウィジェットのクラス名: <code></code>
 
* ウィジェットのクラス名: <code></code>
138行目: 136行目:
 
サイトのメタ情報(ログイン/アウト、フィードリンク、wordpress.org へのリンク)を出力します。
 
サイトのメタ情報(ログイン/アウト、フィードリンク、wordpress.org へのリンク)を出力します。
  
  <?php the_widget('WP_Widget_Meta', $instance, $args); ?>
+
  <?php the_widget( 'WP_Widget_Meta', $instance, $args ); ?>
  
 
* ウィジェットのクラス名: <code>widget_meta</code>
 
* ウィジェットのクラス名: <code>widget_meta</code>
147行目: 145行目:
  
 
初期設定のまま使用:
 
初期設定のまま使用:
  <?php the_widget('WP_Widget_Meta'); ?>
+
 
 +
  <?php the_widget( 'WP_Widget_Meta' ); ?>  
  
 
<div id="Pages_widget">
 
<div id="Pages_widget">
155行目: 154行目:
 
[[Pages|ページ]]リストを表示します。
 
[[Pages|ページ]]リストを表示します。
  
  <?php the_widget('WP_Widget_Pages', $instance, $args); ?>
+
  <?php the_widget( 'WP_Widget_Pages', $instance, $args ); ?>
  
 
* ウィジェットのクラス名: <code>widget_pages</code>
 
* ウィジェットのクラス名: <code>widget_pages</code>
166行目: 165行目:
  
 
初期設定のまま使用:
 
初期設定のまま使用:
  <?php the_widget('WP_Widget_Pages'); ?>
+
  <?php the_widget( 'WP_Widget_Pages' ); ?>
  
 
見出しを <nowiki><h3>コンテンツ</h3></nowiki> に変更し、更新順に表示:
 
見出しを <nowiki><h3>コンテンツ</h3></nowiki> に変更し、更新順に表示:
175行目: 174行目:
 
</div>
 
</div>
  
  <?php the_widget('WP_Widget_Recent_Comments', $instance, $args); ?>
+
Display to a list of recent comments.
 +
  <?php the_widget( 'WP_Widget_Recent_Comments', $instance, $args ); ?>  
  
 
* ウィジェットのクラス名: <code>widget_recent_comments</code>
 
* ウィジェットのクラス名: <code>widget_recent_comments</code>
185行目: 185行目:
  
 
初期設定のまま使用:
 
初期設定のまま使用:
  <?php the_widget('WP_Widget_Recent_Comments'); ?>
+
  <?php the_widget( 'WP_Widget_Recent_Comments' ); ?>  
  
 
<div id="Recent_Posts_widget">
 
<div id="Recent_Posts_widget">
196行目: 196行目:
 
* instance:
 
* instance:
 
** title : 出力する投稿リストの見出し。初期値は <code>__('Recent Posts')</code>
 
** title : 出力する投稿リストの見出し。初期値は <code>__('Recent Posts')</code>
** number : 表示する投稿数。最大 15件。
+
** number : 表示する投稿数。最大 15件。 初期値: 10
  
 
=== 用例 ===
 
=== 用例 ===
  
 
初期設定のまま使用:
 
初期設定のまま使用:
  <?php the_widget('WP_Widget_Recent_Posts'); ?>
+
  <?php the_widget( 'WP_Widget_Recent_Posts' ); ?>  
 +
  
 
<div id="RSS_widget">
 
<div id="RSS_widget">
207行目: 208行目:
 
</div>
 
</div>
  
  <?php the_widget('WP_Widget_RSS', $instance, $args); ?>
+
  <?php the_widget( 'WP_Widget_RSS', $instance, $args ); ?>
  
 
* ウィジェットのクラス名: <code></code>
 
* ウィジェットのクラス名: <code></code>
 
* instance:
 
* instance:
** title
+
*; title
** url
+
*: The title of list
** items
+
*: Default: the title inherited from the RSS or Atom feed
** show_summary
+
*; url
** show_author
+
*: RSS または Atom feed URL to include.
** show_date
+
*; items
** number
+
*: the number of RSS or Atom items to display
 +
*; show_summary
 +
*; show_author
 +
*; show_date
  
 
=== 用例 ===
 
=== 用例 ===
  
 
初期設定のまま使用:
 
初期設定のまま使用:
  <?php the_widget('WP_Widget_RSS'); ?>
+
  <?php the_widget( 'WP_Widget_RSS' ); ?>
  
 
<div id="Search_widget">
 
<div id="Search_widget">
228行目: 232行目:
 
</div>
 
</div>
  
  <?php the_widget('WP_Widget_Search', $instance, $args); ?>
+
  <?php the_widget( 'WP_Widget_Search', $instance, $args ); ?>  
  
 
* ウィジェットのクラス名: <code>widget_search</code>
 
* ウィジェットのクラス名: <code>widget_search</code>
237行目: 241行目:
  
 
初期設定のまま使用:
 
初期設定のまま使用:
  <?php the_widget('WP_Widget_Search'); ?>
+
  <?php the_widget( 'WP_Widget_Search' ); ?>  
  
 
<div id="Tag_Cloud_widget">
 
<div id="Tag_Cloud_widget">
243行目: 247行目:
 
</div>
 
</div>
  
  <?php the_widget( 'WP_Widget_Tag_Cloud', $instance, $args); ?>
+
  <?php the_widget( 'WP_Widget_Tag_Cloud', $instance, $args ); ?>
  
 
* ウィジェットのクラス名: <code></code>
 
* ウィジェットのクラス名: <code></code>
258行目: 262行目:
 
</div>
 
</div>
  
  <?php the_widget('WP_Widget_Text', $instance, $args); ?>
+
  <?php the_widget( 'WP_Widget_Text', $instance, $args ); ?>  
  
 
* ウィジェットのクラス名: <code>widget_text</code>
 
* ウィジェットのクラス名: <code>widget_text</code>
269行目: 273行目:
  
 
初期設定のまま使用:
 
初期設定のまま使用:
  <?php the_widget('WP_Widget_Text'); ?>
+
  <?php the_widget( 'WP_Widget_Text' ); ?>
 +
 
 +
==カスタムウィジェット ==
 +
 
 +
Display custom widget in template.
 +
 
 +
<?php the_widget( 'My_Custom_Widget', $instance, $args ); ?>
 +
 
 +
* widget's classname: ウィジェットのクラス名 (例は以下を参照)
 +
* instance: (オプション)
 +
* arguments: (オプション)
 +
 
 +
=== 用例 ===
 +
 
 +
デフォルトの使い方:
 +
 
 +
<code>class <strong>My_Custom_Widget</strong> extends WP_Widget
 +
{
 +
/* your code* /
 +
}</code>
 +
 
 +
<?php the_widget( 'My_Custom_Widget' ); ?>
 +
 
 +
 
 +
== 注 ==
 +
 
 +
* Uses: global <tt>$wp_widget_factory</tt> - To retrieve the widget object.
 +
* Uses: <tt>[[Function_Reference/do_action | do_action()]]</tt> - Calls <tt>[[Plugin_API/Action_Reference/the_widget | 'the_widget']]</tt> with <tt>$widget</tt>, <tt>$instance</tt> and <tt>$args</tt>.
 +
 
  
 
== 変更履歴 ==
 
== 変更履歴 ==
 
* [[Version 2.8|2.8]] : 新規テンプレートタグ
 
* [[Version 2.8|2.8]] : 新規テンプレートタグ
 +
 +
== ソースファイル ==
 +
 +
<tt>the_widget()</tt> は{{Trac|wp-includes/widgets.php}}にあります。
 +
  
 
== 参考 ==
 
== 参考 ==
* ソースコード:
+
* {{Trac|wp-includes/default-widgets.php}} - ウィジェットのソースコードは、WordPressのコアに含まれています。
** {{BrowseSource|wp-includes/widgets.php}}
+
* [https://core.trac.wordpress.org/ticket/9701 Ticket #9701] - Add a the_widget() function to output a generic widget anywhere in a template.
** {{BrowseSource|wp-includes/default-widgets.php}}
+
 
* [https://core.trac.wordpress.org/ticket/9701 Ticket 9701 (Add a the_widget() function to output a generic widget anywhere in a template)]
+
  
 
== 関連 ==
 
== 関連 ==
* [[管理パネル]] > [[管理パネル#Appearance|外観]] > [[Appearance Widgets SubPanel|ウィジェット]]
+
* [[管理画面]] > [[管理画面#Appearance|外観]] > [[Appearance Widgets SubPanel|ウィジェット]]
 +
 
 +
{{Widget Tags}}
  
 
{{DEFAULTSORT:The_widget}}
 
{{DEFAULTSORT:The_widget}}
 +
 +
{{原文|Function Reference/the_widget|151262}}<!--  04:03, 30 April 2015‎ Mercime 版 -->
 +
 +
{{Tag Footer}}
 +
 +
 
[[Category:テンプレートタグ]]
 
[[Category:テンプレートタグ]]
 
[[Category:ウィジェット]]
 
[[Category:ウィジェット]]

2015年7月16日 (木) 04:52時点における最新版

説明

テンプレートタグ the_widget() は、サイドバーの外側に任意のウィジェットを表示します。テンプレートのどこでも使えます。

使い方

<?php the_widget( $widget, $instance, $args ); ?>

パラメータ

$widget
string) (必須) ウィジェットの PHP クラス名。 WordPress でインクルードするウィジェットのクラス:
初期値: なし


$instance
array|string) (オプション) 配列またはクエリ文字列型) ウィジェットのインスタンス設定(下記の各ウィジェットを参照)
初期値: array()
$args
array|string) (オプション) 配列またはクエリ文字列型) ウィジェットのサイドバー引数 空の場合は、デフォルトに:
before_widget
(文字列) ウィジェットの前に出力するテキストまたは HTML
初期値: <div class="widget ウィジェットのクラス名">
after_widget
(文字列) ウィジェットの後ろに出力するテキストまたは HTML
初期値: </div>
before_title
(文字列) 見出しの前に出力するテキストまたは HTML
初期値: <h2 class="widgettitle">
after_title
(文字列) 見出しの後ろに出力するテキストまたは HTML
初期値: </h2>
初期値: array()


アーカイブ・ウィジェット

月別アーカイブリストを出力します。

<?php the_widget( 'WP_Widget_Archives', $instance, $args ); ?>
  • ウィジェットのクラス名: widget_archive
  • instance:
    title 
    アーカイブリストの見出し。初期値は __('Archives')
    count 
    投稿数を表示するか。wp_get_archivesshow_post_count パラメータ。初期値は 0(表示しない)
    dropdown 
    ドロップダウンメニューで出力するか。初期値は 0(箇条書きリスト)。

用例

初期設定のまま使用:

<?php the_widget( 'WP_Widget_Archives' ); ?>

ドロップダウン形式で月別アーカイブリストを出力:

<?php the_widget( 'WP_Widget_Archives', 'dropdown=1' ); ?>

カレンダー・ウィジェット

カレンダーを出力します。

<?php the_widget( 'WP_Widget_Calendar', $instance, $args ); ?>
  • ウィジェットのクラス名: widget_calendar
  • instance:
    title 
    カレンダーの見出し。初期値は ' '

用例

初期設定のまま使用:

<?php the_widget('WP_Widget_Calendar'); ?>

カテゴリー・ウィジェット

カテゴリーリストを出力します。

<?php the_widget( 'WP_Widget_Categories', $instance, $args ); ?>
  • ウィジェットのクラス名: widget_categories
  • instance:
    title 
    カテゴリーリストの見出し。初期値は __( 'Categories' )
    count 
    各カテゴリの投稿数を表示する(1)か。wp_dropdown_categories または wp_list_categoriesshow_count パラメータ。初期値は 0(表示しない)
    hierarchical 
    カテゴリの親子を入れ子(ツリー)表示にする(1)か。初期値は 0(親子同レベルに表示)
    dropdown 
    リストをドロップダウンメニューで表示する(1)か。初期値は 0(箇条書きリスト)

用例

初期設定のまま使用:

<?php the_widget('WP_Widget_Categories'); ?>

ドロップダウンリストで、投稿数も表示する:

<?php the_widget( 'WP_Widget_Categories', 'dropdown=1&count=1' ); ?> 

リンクリストを出力します。

<?php the_widget( 'WP_Widget_Links', $instance, $args ); ?>
  • ウィジェットのクラス名:
  • instance:
    title 
    リンクリストの見出し。
    category 
    出力するリンクカテゴリID。複数のときはカンマ区切り(,)で指定。同 category パラメータ。初期値は false(全カテゴリを出力)
    description 
    各リンクの説明を表示する(1)か。wp_list_bookmarksshow_description パラメータ。初期値は false(表示しない)
    rating 
    評価を表示する(1)か。同 show_rating パラメータ。初期値は false(表示しない)
    images 
    画像を表示する(1)か。同 show_images パラメータ。初期値は true(表示する)
    name 
    画像を表示する場合に alt 属性にリンク名を出力する(1)か。同 show_name パラメータ。初期値は false(出力しない)

用例

初期設定のまま使用:

<?php the_widget('WP_Widget_Links'); ?>

リンクカテゴリID 2, 3 のみを出力:

<?php the_widget('WP_Widget_Links', 'category=2,3'); ?>

メタ・ウィジェット

サイトのメタ情報(ログイン/アウト、フィードリンク、wordpress.org へのリンク)を出力します。

<?php the_widget( 'WP_Widget_Meta', $instance, $args ); ?>
  • ウィジェットのクラス名: widget_meta
  • instance:
    title 
    メタ情報の見出し。初期値は __('Meta')

用例

初期設定のまま使用:

<?php the_widget( 'WP_Widget_Meta' ); ?> 

ページ・ウィジェット

ページリストを表示します。

<?php the_widget( 'WP_Widget_Pages', $instance, $args ); ?>
  • ウィジェットのクラス名: widget_pages
  • instance:
    title 
    ページリストの見出し。初期値は __( 'Pages' )
    sortby 
    何の順に表示するか。wp_list_pagessort_column パラメータ。初期値は menu_order(ページの「表示順」)
    exclude 
    除外するページID。複数のときはカンマ区切り(,)で指定。初期値なし(全ページを表示)

用例

初期設定のまま使用:

<?php the_widget( 'WP_Widget_Pages' ); ?>

見出しを <h3>コンテンツ</h3> に変更し、更新順に表示:

<?php the_widget('WP_Widget_Pages', 'title=コンテンツ&sortby=post_modified', 'before_title=<h3>&after_title=</h3>'); ?>

最近のコメント・ウィジェット

Display to a list of recent comments.

<?php the_widget( 'WP_Widget_Recent_Comments', $instance, $args ); ?> 
  • ウィジェットのクラス名: widget_recent_comments
  • instance:
    • title : 出力するコメントリストの見出し。__('Recent Comments')
    • number : 表示するコメント数。最大 15件。初期値は 5

用例

初期設定のまま使用:

<?php the_widget( 'WP_Widget_Recent_Comments' ); ?> 

最近の投稿・ウィジェット

<?php the_widget('WP_Widget_Recent_Posts', $instance, $args); ?>
  • ウィジェットのクラス名: widget_recent_entries
  • instance:
    • title : 出力する投稿リストの見出し。初期値は __('Recent Posts')
    • number : 表示する投稿数。最大 15件。 初期値: 10

用例

初期設定のまま使用:

<?php the_widget( 'WP_Widget_Recent_Posts' ); ?> 

RSS ウィジェット

<?php the_widget( 'WP_Widget_RSS', $instance, $args ); ?>
  • ウィジェットのクラス名:
  • instance:
    title
    The title of list
    Default: the title inherited from the RSS or Atom feed
    url
    RSS または Atom feed URL to include.
    items
    the number of RSS or Atom items to display
    show_summary
    show_author
    show_date

用例

初期設定のまま使用:

<?php the_widget( 'WP_Widget_RSS' ); ?>

検索ウィジェット

<?php the_widget( 'WP_Widget_Search', $instance, $args ); ?> 
  • ウィジェットのクラス名: widget_search
  • instance:
    • title : 初期値なし

用例

初期設定のまま使用:

<?php the_widget( 'WP_Widget_Search' ); ?> 

タグクラウド・ウィジェット

<?php the_widget( 'WP_Widget_Tag_Cloud', $instance, $args ); ?>
  • ウィジェットのクラス名:
  • instance:
    • title : 出力するタグクラウドの見出し。初期値は __('Tags')

用例

初期設定のまま使用:

<?php the_widget( 'WP_Widget_Tag_Cloud'); ?>

テキスト・ウィジェット

<?php the_widget( 'WP_Widget_Text', $instance, $args ); ?> 
  • ウィジェットのクラス名: widget_text
  • instance:
    • title : 出力するテキストの見出し。初期値なし
    • text :
    • filter

用例

初期設定のまま使用:

<?php the_widget( 'WP_Widget_Text' ); ?>

カスタムウィジェット

Display custom widget in template.

<?php the_widget( 'My_Custom_Widget', $instance, $args ); ?> 
  • widget's classname: ウィジェットのクラス名 (例は以下を参照)
  • instance: (オプション)
  • arguments: (オプション)

用例

デフォルトの使い方:

class My_Custom_Widget extends WP_Widget { /* your code* / }

<?php the_widget( 'My_Custom_Widget' ); ?>


  • Uses: global $wp_widget_factory - To retrieve the widget object.
  • Uses: do_action() - Calls 'the_widget' with $widget, $instance and $args.


変更履歴

  • 2.8 : 新規テンプレートタグ

ソースファイル

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


参考

  • wp-includes/default-widgets.php - ウィジェットのソースコードは、WordPressのコアに含まれています。
  • Ticket #9701 - Add a the_widget() function to output a generic widget anywhere in a template.


関連

ウィジェット 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/the_widget最新版との差分


関数リファレンステンプレートタグ目次もご覧ください。