WordPress Logo WordPress の投稿タイプ

更新日:2022年03月13日

作成日:2018年6月24日

投稿タイプ

WordPress は異なるタイプのコンテンツを保存し、表示することができます。投稿タイプは WordPress が管理するコンテンツのグループ単位(WordPress の posts テーブル内で管理されている様々な構造を持つデータ)のことです。標準で用意されているものには「投稿記事 (post)」や「固定ページ (page)」などがあります。

どの投稿タイプのコンテンツもすべてひとつの場所(データベースの wp_posts テーブル)に格納されていて、post_type というカラムによって区別されます。

言い換えると、WordPress では記事が投稿されると、内部的に同じ場所にデータを保存していて、それぞれを区別するために、投稿タイプと言う文字列を付加しています。例えば投稿記事の一覧を表示するには、データベースに対して「投稿タイプが post の記事」をリクエストするといった具合です。

WordPress Codex(日本語):投稿タイプ

デフォルトタイプ

WordPress には5つの主要なデフォルト投稿タイプがあります。

投稿 (post)
WordPress での投稿 (post) は、ブログで使われるメインの投稿タイプです。投稿は通常、一番新しいものが最初にくる反時系列順で表示されます。投稿はフィードの作成にも使われます。
ページまたは固定ページ (page)
WordPress でのページ (page) は投稿に似ていますが、投稿の時系列構造の外にあります。ページはメインのサイトドメインのすぐ下にくる独自 URL を持っており、特別なページテンプレートを使って表示することができます。また、他のページを親に持つ階層化した構造にすることもできます。
添付ファイル (attachment)
添付ファイル (attachment) は特別な投稿で、メディアアップロードシステムを使ってアップロードされたファイルについて、ファイル名・説明などすべての情報が含まれます。例えばファイルが画像の場合、画像のサイズや自動生成されたサムネイル、ファイルの位置、埋込み EXIF 情報などです。
リビジョン (revision)
リビジョン (revision) は下書きや既存の投稿・ページの過去の変更履歴を保存するための投稿タイプです。投稿・ページタイプと基本的には同じような内容ですが、元となる投稿・ページが親となります。
ナビゲーションメニュー (nav_menu)
ナビゲーションメニュー (nav_menu) はナビゲーションメニューシステムの各メニュー項目を保存するための投稿タイプです。

関連項目:get_post_type()

投稿 (post)

投稿 (post)は、時系列に従ってコンテンツを管理する投稿タイプ(post_type == 'post')です。

投稿は記事を日付順に並べるアーカイブページや作成者別などの優遇されたページ種類を持つため、時系列や作成者を意識する場合に用います。また、カテゴリーやタグを用いた記事の分類を行うこともできます。

  • 簡単に時系列で並べられる。
  • 投稿自体に親子関係を付けることはできない。
  • カテゴリーで分類できる。(カテゴリーには親子関係を付けることができる。)
  • タグで分類できる。
  • カスタムタクソノミーを使って分類することもできる。
  • 抜粋が使える。

投稿の分類方法は、カテゴリーとタグの両方が使え、カスタムタクソノミーも使うことができます(但し、カスタムタクソノミーは機能として追加しないと使えません)。また、カテゴリーには親子関係を付けることができます。

固定ページ (page)

固定ページ (page)は、時系列から独立してコンテンツを管理する投稿タイプ(post_type == 'page')です。

固定ページは、階層構造を持つ固定的なコンテンツを持つ部分に割り当てます。階層構造でコンテンツを管理できるため、サイトのほとんどの部分で利用することができます。

  • カテゴリーやタグの設定がない。
  • カスタムタクソノミーを使って分類することができる。
  • ページに親子関係を付けることができる。
  • ページごとに違うテンプレートファイルを使うことができる。
  • 固定ページで作ったページは、Webサイトのトップページに指定することができる
    (「管理画面」→「設定」→「表示設定」の「フロントページの表示」で「固定ページ」を選択 )

固定ページは、テンプレート階層でもっとも優先順位の高い「ページテンプレート」を、ページごとに設定することができます。ページテンプレートは、テンプレートファイルに「Template Name:テンプレート名」を記述することで、管理画面の「ページテンプレート選択欄」に追加され、選択することができるようになります。詳細は「カスタムページテンプレート」を参照ください。

カスタム投稿タイプ

カスタム投稿タイプは、独自の投稿タイプを追加することができ、「投稿記事」や「固定ページ」とは別にコンテンツを管理することができます。カテゴリー形式またはタグ形式で分類することができ、それには「カスタムタクソノミー」という機能を使います。

WordPress にカスタム投稿タイプを追加するには、register_post_type 関数を使って独自の投稿タイプとその動作を定義します。

商品や物件といった、抽出や「次へ」「前へ」のページリンクが必要なコンテンツに対しては、カスタム投稿を用いると良いかもしれません。カスタム投稿のアーカイブページや、カスタム投稿に割り当てたカスタム分類のアーカイブページは、コンテンツをリストで表示したり抽出することができます。

  • ページに親子関係を付けることができる。('hierarchical' => true)
  • コンテンツをカスタムタクソノミーで分類できる。
  • カスタムタクソノミーは複数設定できる。
  • カスタムタクソノミーには親子関係を付けることができる。
  • 時系列で並べられる。('hierarchical' => false)
  • カスタム投稿タイプごとにテンプレートファイルを使うことができる。
  • 一覧表示(アーカイブ表示)を作成するには has_archive を true にしておく
  • post_type はカスタム投稿タイプの任意の名前

カスタム投稿タイプの詳細は「カスタム投稿タイプとカスタム分類(タクソノミー)」を参照ください。