ちょっと手間取った!WordPressで複数のカスタム投稿タイプを設置する方法
  • ちょっと手間取った!WordPressで複数のカスタム投稿タイプを設置する方法
  • 記事公開:2014/12/29
  • 最終更新:2015/09/17

ちょっと手間取った!WordPressで複数のカスタム投稿タイプを設置する方法

カスタム投稿タイプを複数設置する場合、単純にカスタム投稿タイプを有効にするだけでは正常に動きません。このページでは、複数のカスタム投稿タイプをコピペだけで実装できる手順を解説しています。

この記事は約 6 分で読めます。

Wordpressのカスタマイズなら全てお任せ!

http://takayakondo.com/

WordpressのカスタマイズならWordpressカスタマイザーにお任せください!
毎月5件の限定受注。お見積もりはいつでも無料です。

カスタム投稿タイプを有効にする方法

カスタム投稿タイプを有効にする場合は、利用中テーマのfunctions.phpに以下を記述します。

add_action( 'init', 'create_post_type' );
function create_post_type() {
register_post_type( 'news',
array(
'labels' => array(
'name' => __( '更新情報' ),
'singular_name' => __( '更新情報' )
),
'public' => true,
'menu_position' =>5,
)
);
}

各項目の設定方法など、詳しい解説は「どこでも簡単!WordPressのカスタム投稿タイプを有効にする方法」を参照してください。詳しく解説しております。

複数のカスタム投稿タイプを有効にする方法

複数のカスタム投稿タイプを設置しようとすると、上記で解説したタグを2つ設置すれば良いと考えるかと思いますが、上記のタグを2回記述しても正常に動作しません。誤った記述となりますので2回記述してしまうと、サイト自体にも管理画面にもアクセスできなくなってしまいます。

複数のカスタム投稿タイプを有効にする場合は、利用中テーマのfunctions.phpに以下の様に記述をします。

//カスタム投稿タイプの追加
add_action( 'init', 'create_post_type' );
function create_post_type() {

//カスタム投稿タイプ1(ここから)
register_post_type(
'custom1',
array(
'labels' => array(
'name' => __( 'カスタム投稿タイプ1' ),
'singular_name' => __( 'カスタム投稿タイプ1' )
),
'public' => true,
'menu_position' =>5,
)
);
//カスタム投稿タイプ1(ここまで)

//カスタム投稿タイプ2(ここから)
register_post_type(
'custom2',
array(
'labels' => array(
'name' => __( 'カスタム投稿タイプ2' ),
'singular_name' => __( 'カスタム投稿タイプ2' )
),
'public' => true,
'menu_position' =>5,
)
);
//カスタム投稿タイプ2(ここまで)

}

//カスタム投稿タイプ1(ここから)
・・・
//カスタム投稿タイプ1(ここまで)

上記の部分が1つのカスタム投稿タイプを定義している部分です。
この部分を設置したいカスタム投稿の個数だけ以下の部分にコピペしてください。

//カスタム投稿タイプの追加
add_action( 'init', 'create_post_type' );
function create_post_type() {

ここに必要な個数だけコピペしてください。

}

コピペするときは、分類名などを個別に定義する必要があります。
上記のコードをただコピペするだけでは正常に動作しません。

//カスタム投稿タイプ1(ここから)
register_post_type(
'custom1',
array(
'labels' => array(
'name' => __( 'カスタム投稿タイプ1' ),
'singular_name' => __( 'カスタム投稿タイプ1' )
),
'public' => true,
'menu_position' =>5,
)
);
//カスタム投稿タイプ1(ここまで)

記述するとき、以下の部分は利用目的にあった内容に変更してください。

register_post_type( 'custom1',

「custom1」の部分がカスタム投稿タイプの分類名です。上記は「custom1」としましたが、この部分は自由に変更することが可能です。目的にあった内容に変更してください。例えば、更新情報を目的としたカスタム投稿であれば「news」など。

'name' => __( 'カスタム投稿タイプ1' ),
'singular_name' => __( 'カスタム投稿タイプ1' )

「カスタム投稿タイプ1」の部分が、管理画面に表示されるメニュー名になります。
この部分も目的にあった内容に変更しておきましょう。

'menu_position' =>5,

ここの数値を変更することで、管理画面のメニューの表示位置を指定することができます。
数値を大きくする毎にメニューが下に移動します。

まとめ

複数のカスタム投稿タイプを設置する方法をまとめてみました。

カスタム投稿タイプを有効にするコードを2回記述するだけでは正常に動作しません。
私も最初はこれをやって管理画面を真っ白にしてしまいました。

ちょっと調べたら解決方法が分かったので、私のメモも兼ねて今回まとめた次第です。

この記事が気に入ったら【いいね】しよう!

Wordpressサイトのカスタマイズで
お困りではありませんか?

あなたのWordpressサイトを、ご希望に沿ってカスタマイズいたします。
次に該当する方は、お気軽にご相談下さい。

  • Wordpressサイトをカスタマイズしたいが、やり方が分からないで困っている。カスタマイズの知識が豊富な人に任せたい。
  • Wordpressサイトをカスタマイズしたいが、自分でカスタマイズする暇がない。カスタマイズが得意な人に丸投げしたい。
  • Wordpressサイトをカスタマイズしてみたが、上手くカスタマイズできなかった。カスタマイズ経験が豊富な人に任せたい。
  • Wordpressサイトをカスタマイズしてみたら、バグが発生して困っている。正常に動作するように正しくカスタマイズしてほしい。

一つでも該当する方は、以下のリンクからチェックしてみてください。

詳細を確認する

著者:とあるWEBディレクター

岡山在住のWebディレクターです。Wordpressを使ったWEBサイト制作を中心に7年間ほど活動させていただいています。

Wordpress関連の記事でお役に立てれば幸いです。

【関連記事】あなたが興味のありそうな関連記事をご紹介します。

  • WordPressに埋め込んだYOUTUBE動画をレスポンシブに対応させる方法

    サイト内に埋め込んだYOUTUBE動画をレスポンシブに対応させる方法をご紹介します。スマホでサイトを観覧した時でも、もうYOUTUBE動画が画面からはみ出すことはありません。このカスタマイズは3分間でマスターできます! 記事を読む

  • これ便利!記事公開時にpoketに自動的に記事をポケットするカスタマイズ。

    WordPressで記事を公開する時にpoketに記事を自動的にポケットするカスタマイズをご紹介します。記事公開時に自動的にポケットされたい方は参考にしてください。コピペだけで1分後には自動ポケット出来るようになります。 記事を読む

  • Contact Form 7のよくあるカスタマイズが解説された必読スライドショー。

    Contact Form 7をかっこよくカスタマイズしたい方はいませんか?私もContact Form 7を使い始めた頃にお世話になったContact Form 7のよくあるカスタマイズ方法が解説されたスライドショーをご紹介します。 記事を読む

  • WordPressの「続きを読む」リンクから#more…をコピペで消してみた。

    WordPress の 「続きを読む」()を利用したとき、「続きを読む」をクリックすると、URL の末尾に #more … といったハッシュが付与されます。以前から必要ないと感じていたのでこの部分をコピペのみで削除してみました。 記事を読む

  • WordPressのカスタム投稿タイプでアイキャッチを有効にする方法

    wordpressのカスタム投稿タイプでアイキャッチを有効にする方法を解説します。カスタム投稿を有効にすれば、アイキャッチも当然有効になると考えていたので、ちょっとビックリしました。やり方を調べたので参考にしてください。 記事を読む

コメントを残す


(必須)

CAPTCHA