カスタム投稿(Custom Post Types)
WordPressのカスタム投稿タイプ(CPT)を使って
ブログとは別のコンテンツ(例:works, portfolio, other)を管理
投稿タイプごとにアーカイブやテンプレート、管理UIを分けてコンテンツ管理が可能になるとぐっと使いやすくなる。
大まかな手順メモ
- functions.php に register_post_type を追加。
- ラベル、supports(title, editor, thumbnail 等)、rewrite(スラッグ)を設定。
- archive-{post_type}.php、single-{post_type}.php を作成して表示をカスタマイズ。
- 必要に応じてカスタム分類(taxonomies)を register_taxonomy で追加。
(functions.php)
add_action('init', function(){
register_post_type('works', [
'labels' => ['name'=>'Works','singular_name'=>'Work'],
'public' => true,
'has_archive' => true,
'rewrite' => ['slug' => 'works'],
'supports' => ['title','editor','thumbnail','excerpt'],
]);
});
- パーマリンク構造を変更した場合は管理画面で「設定 → パーマリンク」の保存(フラッシュ)を実行する。
- has_archive:true により /works/ アーカイブが利用可能になる。
確認したことは以下
- register_post_type が functions.php にある
- archive と single テンプレートが存在する
- 管理画面で投稿タイプが作成できる
次は「制作実績」のCPTを追加し投稿を1つ作成してアーカイブと single 表示を確認する。


コメント