当サイト、Codex 日本語版は今後積極的な更新は行わない予定です。後継となる新ユーザーマニュアルは、https://ja.wordpress.org/support/ にあります。
万が一、当サイトで重大な問題を発見した際などは、フォーラムWordSlack #docs チャンネルでお知らせください。</p>

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

提供: WordPress Codex 日本語版
移動先: 案内検索
(13:17, 1 November 2009 MichaelH に更新)
(en:Function Reference/get_the_tags 13:16, 13 September 2013 MichaelH 版を反映して残りを和訳。)
3行目: 3行目:
 
</div>
 
</div>
  
記事に付けられているタグをそれぞれ一つのオブジェクトにし、そのオブジェクトの配列を返します。このタグは[[The Loop|ループ]]内で使用しなければなりません。
+
投稿に付けられているタグをそれぞれ一つのオブジェクトにし、そのオブジェクトの配列を返します。
 
+
このタグを[[The Loop|ループ]]内で使用する場合は、投稿 ID を省略して構いません。
  
 
<div id="Usage">
 
<div id="Usage">
10行目: 10行目:
 
</div>
 
</div>
  
このファンクションは何も表示しません。オブジェクトにアクセスし、echo もしくは使いたいメンバ変数を使用します。
+
このファンクションは何も表示しません。
 +
オブジェクトにアクセスし、メンバ変数を <code>echo</code> で表示、または使用してください。
  
以下の例は記事に付けられているタグを表示します ([[テンプレートタグ/the_tags|<tt>the_tags()</tt>]] を使うのと似ていますが、タグにリンクが無く、コンマの代わりにスペースが使われています) 。
+
以下の例は投稿に付けられている各タグの名前を表示します(これは [[テンプレートタグ/the_tags|<tt>the_tags()</tt>]] を使うのと似ていますが、タグにリンクが無く、コンマの代わりにスペースが使っています)。
  
<pre><?php
+
<pre>
 +
<?php
 
$posttags = get_the_tags();
 
$posttags = get_the_tags();
if ($posttags) {
+
if ( $posttags ) {
foreach($posttags as $tag) {
+
  foreach ( $posttags as $tag ) {
echo $tag->name . ' ';  
+
    echo $tag->name . ' ';  
 +
  }
 
}
 
}
}
+
?>
?></pre>
+
</pre>
 +
 
 +
<div id="Parameters">
 +
== パラメータ ==
 +
</div>
 +
 
 +
{{Parameter|$id|整数|投稿 ID|オプション|現在の投稿の ID}}
  
 
<div id="Examples">
 
<div id="Examples">
28行目: 37行目:
  
 
<div id="Show_tag_Images">
 
<div id="Show_tag_Images">
=== タグのイメージを表示 ===
+
=== タグの画像を表示 ===
 
</div>
 
</div>
  
これは <tt>term_id</tt> にちなんだファイル名のタグイメージを alt 属性にタグ名を付けて表示します。また、他のメンバ変数を代わりに使うことも出来ます。
+
次の例は <tt>term_id</tt> を画像のファイル名に使ってタグの画像を表示します。
 +
また、画像の <tt>alt</tt> 属性に <tt>name</tt> を設定します。
 +
他のメンバー変数を代わりに使うこともできます。
  
<pre><?php
+
<pre>
 +
<?php
 
$posttags = get_the_tags();
 
$posttags = get_the_tags();
if ($posttags) {
+
if ( $posttags ) {
foreach($posttags as $tag) {
+
  foreach ( $posttags as $tag ) {
echo '<img src="http://example.com/images/' . $tag->term_id . '.jpg"  
+
    echo '<img src="http://example.com/images/' . $tag->term_id . '.jpg" alt="' . $tag->name . '" />';  
alt="' . $tag->name . '" />';  
+
  }
 
}
 
}
}
+
?>
?></pre>
+
</pre>
  
 
<div id="Show_the_First_tag_Name_Only">
 
<div id="Show_the_First_tag_Name_Only">
=== 最初のタグだけを表示する ===
+
=== 最初のタグ名だけを表示する ===
 
</div>
 
</div>
  
<pre><?php
+
<pre>
 +
<?php
 
$posttags = get_the_tags();
 
$posttags = get_the_tags();
$count=0;
+
if ( $posttags[0] ) {
if ($posttags) {
+
  echo $posttags[0]->name;
foreach($posttags as $tag) {
+
$count++;
+
if (1 == $count) {
+
echo $tag->name . ' ';
+
 
}
 
}
}
+
?>
}
+
</pre>
?></pre>
+
  
 
<div id="Display_code_bases_on_different_tag_values">
 
<div id="Display_code_bases_on_different_tag_values">
 
===異なるタグ値に基づくコードを表示する<!-- bases は based のミス? --~~~~ -->===
 
===異なるタグ値に基づくコードを表示する<!-- bases は based のミス? --~~~~ -->===
 
</div>
 
</div>
このコードは、投稿にあるタグが含まれるか否かによって HTML コードを表示します。必要ならば、<b>else if</b> ステートメントを好きなだけ追加してください。
+
 
 +
このコードは、投稿にあるタグが含まれるか否かによって異なる HTML コードを表示します。
 +
必要ならば、<code>else if</code> ステートメントを好きなだけ追加してください。
  
 
<pre>
 
<pre>
 
<?php  
 
<?php  
if ($all_the_tags);
 
 
$all_the_tags = get_the_tags();
 
$all_the_tags = get_the_tags();
foreach($all_the_tags as $this_tag) {
+
if ( $all_the_tags ) {
if ($this_tag->name == "sometag" ) {
+
  foreach ( $all_the_tags as $this_tag ) {
 +
    if ( $this_tag->name == "sometag" ) {
 
?>
 
?>
  
 
<p>SOME HTML CODE <img src="someimage.jpg"></p>
 
<p>SOME HTML CODE <img src="someimage.jpg"></p>
  
<?php } else if ($this_tag->name == "someothertag" ) { ?>
+
<?php
 +
    } else if ( $this_tag->name == "someothertag" ) { ?>
  
 
<p>SOME OTHER HTML CODE <img src="someotherimage.jpg"></p>
 
<p>SOME OTHER HTML CODE <img src="someotherimage.jpg"></p>
  
<?php } else {
+
<?php
// it's neither, do nothing
+
    } else {
 +
      // どちらでも無ければ何もしない
 
?>
 
?>
<!-- not tagged as one or the other -->
+
<!-- どちらのタグも付いていない場合のコードが必要なら、ここへ -->
<?
+
<?php
}
+
    }
}
+
  }
 
}
 
}
 
?>
 
?>
99行目: 111行目:
 
function drop_tags()
 
function drop_tags()
 
{
 
{
    echo "<select onChange=\"document.location.href=this.options[this.selectedIndex].value;\">";
+
  echo "<select onChange=\"document.location.href=this.options[this.selectedIndex].value;\">";
    echo "<option>Tags</option>\n";
+
  echo "<option>Tags</option>\n";
    foreach (get_the_tags() as $tag)
+
  foreach ( get_the_tags() as $tag ) {
     {
+
     echo "<option value=\"";
        echo "<option value=\"";
+
    echo get_tag_link( $tag->term_id) ;
        echo get_tag_link($tag->term_id);
+
    echo "\">" . $tag->name . "</option>\n";
        echo "\">".$tag->name."</option>\n";
+
  }
    }
+
  echo "</select>";
    echo "</select>";
+
 
}
 
}
 
</pre>
 
</pre>
 +
 +
<div id="Return_Values">
 +
== 戻り値 ==
 +
</div>
 +
 +
; <tt>(配列)</tt> : タグオブジェクトの配列
  
 
<div id="Member_Variables">
 
<div id="Member_Variables">
== メンバ変数 ==
+
== メンバー変数 ==
 
</div>
 
</div>
  
;term_id :タグのID
+
;term_id : タグの ID
;name :タグ名
+
;name : タグ名
;slug :タグのスラッグ
+
;slug : タグのスラッグ
;term_group :タグのグループ (もしあれば)
+
<!-- タグ専用の関数なので、非表示化 by gblsm on 10-Aug-2014
;taxonomy :この場合は常に「post_tag」になります
+
;term_group : タグのグループ(もしあれば)
;description :タグの説明
+
;taxonomy : この場合は常に <code>'post_tag'</code> になります
;count :このタグの総使用回数
+
-->
 +
;description : タグの説明
 +
;count : このタグの総使用回数
  
 
<div id="Change_Log">
 
<div id="Change_Log">
 
== 変更履歴 ==
 
== 変更履歴 ==
 
</div>
 
</div>
 +
 
* [[Version 2.3|2.3]] : 新規テンプレートタグ
 
* [[Version 2.3|2.3]] : 新規テンプレートタグ
 +
 +
<div id="Source_File">
 +
== ソースファイル ==
 +
</div>
 +
 +
<tt>get_the_tags()</tt> は {{Trac|wp-includes/category-template.php}} にあります。
  
 
<div id="Related">
 
<div id="Related">
== 関連 ==
+
== 関連項目 ==
 
</div>
 
</div>
  
{{Tag Tags}}
+
{{Tag Tag Tags}}, [[関数リファレンス/get_the_terms|<code>get_the_terms()</code>]], [[関数リファレンス/wp_get_object_terms|<code>wp_get_object_terms()</code>]]
  
 
{{Tag Footer}}
 
{{Tag Footer}}
  
{{Query String Tag Footer}}
+
{{原文|Template Tags/get_the_tags|135520}} <!-- 13:16, 13 September 2013 MichaelH -->
{{原文|Template Tags/get_the_tags|79792}} <!-- 13:17, 1 November 2009 MichaelH -->
+
  
{{DEFAULTSORT:get_the_tags}}
+
{{DEFAULTSORT:Get_the_tags}}
 +
[[Category:関数]]
 
[[Category:wp2.3]]
 
[[Category:wp2.3]]
  
[[en:Template Tags/get_the_tags]]
+
[[en:Function Reference/get_the_tags]]
 +
[[ko:Function Reference/get_the_tags]]

2014年8月10日 (日) 15:11時点における版

投稿に付けられているタグをそれぞれ一つのオブジェクトにし、そのオブジェクトの配列を返します。 このタグをループ内で使用する場合は、投稿 ID を省略して構いません。

使い方

このファンクションは何も表示しません。 オブジェクトにアクセスし、メンバ変数を echo で表示、または使用してください。

以下の例は投稿に付けられている各タグの名前を表示します(これは the_tags() を使うのと似ていますが、タグにリンクが無く、コンマの代わりにスペースが使っています)。

<?php
$posttags = get_the_tags();
if ( $posttags ) {
  foreach ( $posttags as $tag ) {
    echo $tag->name . ' '; 
  }
}
?>

パラメータ

$id
整数) (オプション) 投稿 ID
初期値: 現在の投稿の ID

用例

タグの画像を表示

次の例は term_id を画像のファイル名に使ってタグの画像を表示します。 また、画像の alt 属性に name を設定します。 他のメンバー変数を代わりに使うこともできます。

<?php
$posttags = get_the_tags();
if ( $posttags ) {
  foreach ( $posttags as $tag ) {
    echo '<img src="http://example.com/images/' . $tag->term_id . '.jpg" alt="' . $tag->name . '" />'; 
  }
}
?>

最初のタグ名だけを表示する

<?php
$posttags = get_the_tags();
if ( $posttags[0] ) {
  echo $posttags[0]->name;
}
?>

異なるタグ値に基づくコードを表示する

このコードは、投稿にあるタグが含まれるか否かによって異なる HTML コードを表示します。 必要ならば、else if ステートメントを好きなだけ追加してください。

<?php 
$all_the_tags = get_the_tags();
if ( $all_the_tags ) {
  foreach ( $all_the_tags as $this_tag ) {
    if ( $this_tag->name == "sometag" ) {
?>

<p>SOME HTML CODE <img src="someimage.jpg"></p>

<?php
    } else if ( $this_tag->name == "someothertag" ) { ?>

<p>SOME OTHER HTML CODE <img src="someotherimage.jpg"></p>

<?php
    } else {
      // どちらでも無ければ何もしない
?>
<!-- どちらのタグも付いていない場合のコードが必要なら、ここへ -->
<?php
    }
  }
}
?>

タグをドロップダウンで表示する関数

この関数は、タグをドロップダウンで出力します。

function drop_tags()
{
  echo "<select onChange=\"document.location.href=this.options[this.selectedIndex].value;\">";
  echo "<option>Tags</option>\n";
  foreach ( get_the_tags() as $tag ) {
    echo "<option value=\"";
    echo get_tag_link( $tag->term_id) ;
    echo "\">" . $tag->name . "</option>\n";
  }
  echo "</select>";
}

戻り値

(配列) 
タグオブジェクトの配列

メンバー変数

term_id 
タグの ID
name 
タグ名
slug 
タグのスラッグ
description 
タグの説明
count 
このタグの総使用回数

変更履歴

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

ソースファイル

get_the_tags()wp-includes/category-template.php にあります。


タグ: get_tag(), get_tag_link(), get_tags(), get_the_tag_list(), get_the_tags(), is_tag(), the_tags(), single_tag_title(), tag_description(), wp_generate_tag_cloud(), wp_tag_cloud() , get_the_terms(), wp_get_object_terms()


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


最新英語版: WordPress Codex » Template Tags/get_the_tags最新版との差分