はじめに
Wordpressのアーカイブページなどでパンくずを設定したいときに、ループの外なので、カスタム投稿の名前が拾えないんですが、拾えないんでしょうか?
Wordpressのループの外で投稿名や投稿のスラッグなどを拾う方法はありますよ。
ループの外でも拾うことができるんですね。
ループの外で拾う方法をご紹介していきましょう。
wordpressでループの外でカスタム投稿の名前を取得してみよう
アーカイブページなどのループの外で、カスタム投稿の名前を取得するためには、get_post_typeとget_post_type_objectを使用します。wordpress日本語版の関数リファレンスは、get_post_typeとget_post_type_objectになります。
この2つを使用することで、アーカイブページなどでループの外でもカスタム投稿の名前を取得することができます。
$get_post_type=get_post_type($post);//このコードで現在の投稿のタイプを取得します。
$get_post_type_object=get_post_type_object($get_post_type);//上記で取得した投稿タイプのオブジェクトをよびだします。
$get_post_type_label=get_post_type_object->label;//オブジェクトの中からラベルを指定します。
上記のように、まず現在の投稿タイプを取得し、取得した投稿タイプを元にオブジェクトをよびだします。
よびだしたオブジェクトの中には、投稿タイプのlabelが入っているため、labelを指定することで投稿タイプの名前を取得することができます。
「アーカイブページなどでループの外でパンくず作らないといけないのに名前が取得できない!ベタがきで書くのもナンセンスだ・・どうしよう」って思っている方のお力になれれば幸いです。