【WordPress】投稿タイプ名(スラッグ名)を取得する方法
archive.php
single.php
WordPress
投稿タイプ名
WordPressでWebサイトを構築している時、ふと投稿タイプ名(スラッグ名)を取得する方法ってどんなだったかな?と思って手が止まることがよくあります。
投稿タイプ名(スラッグ名)に限らずWordPressでWebサイトを構築しているとよくあります。
この記事ではsingle.php
やarchive.php
で表示中のページの投稿タイプ名(スラッグ名)を取得する方法をご紹介します。
この記事の目次を表示
single.phpで表示中のページの投稿タイプ名(スラッグ名)を取得する
single.php
で表示中のページの投稿タイプ名(スラッグ名)を取得するには、get_post_type()
関数を使います。
get_post_type()
関数には投稿ID、または投稿オブジェクトを指定します。
投稿IDを指定する場合はこちら。
$post_type = get_post_type( get_the_ID() );
echo $post_type;
投稿オブジェクトを指定する場合はこちら。
$post_type = get_post_type( $post );
echo $post_type;
引数を指定しない場合、現在表示中の記事が対象になります。
つまりsingle.php
で現在表示中のページの投稿タイプ名(スラッグ名)を取得する場合、引数は不要です。
$post_type = get_post_type();
echo $post_type;
特定の投稿記事の投稿タイプ名(スラッグ名)を取得する
特定の投稿記事の投稿タイプ名(スラッグ名)を取得する場合もget_post_type()
関数を使うことで取得することが出来ます。
投稿タイプ名(スラッグ名)を取得したい記事の投稿IDをget_post_type()
関数の引数に指定します。
$post_type = get_post_type( 2 );
echo $post_type;
archive.phpの投稿タイプ名(スラッグ名)を取得する
archive.php
で投稿タイプ名(スラッグ名)を取得するには、get_query_var()
関数を使います。
get_query_var()
の使い方はこちら。
$post_type = get_query_var( 'post_type' );
echo $post_type;
まとめ
いかがでしたか?
WordPressで表示中の記事やページの投稿タイプ名(スラッグ名)を取得する方法のご紹介でした。
表示したいページによって使う関数が変わるので注意したいですね。