メインコンテンツまでスキップ

「お知らせ」等用の投稿タブを作成する方法

function.php を使うかプラグインを使用する

カスタム投稿タイプが必要

そして、カスタム投稿タイプはカスタムタクソノミーが必要の場合もある



カスタムタクソノミー

タグやカテゴリーを包括するようなもの

カスタム投稿タイプにカテゴリーやタグを追加するためのもの

タグ、カテゴリー、タクソノミーに実際についている名前はタームという

カスタムタクソノミーが必要な場合

タグとカテゴリーを一般の投稿記事と同じタグ、カテゴリーを使えない場合

日本語と英語の記事を分けたりして、それぞれの言語用にタグを使いたいときなど



function.php の編集

下記のようにfunction.phpにコードを追加することでお知らせの投稿を行えるようになった。

function.php

/* ---------- カスタム投稿タイプを追加 ---------- */
add_action( 'init', 'create_post_type' );

function create_post_type() {

register_post_type(
'news',
array(
'label' => 'お知らせ',
'public' => true,
'has_archive' => true,
'show_in_rest' => true,
'menu_position' => 5,
'supports' => array(
'title',
'editor',
'thumbnail',
'revisions',
),
)
);
}

こうすることで下記のようにお知らせ用の投稿部分が表示された

newsというカスタム投稿タイプにしたのでそれを取得するには下記

const res = await fetch(`${this.endpoint}/wp/v2/news`);
const data = await res.json();


ローカル(Docker)でのfunction.phpの編集

ローカルでDockerにWordPressを構築している場合、WordPressの管理画面からだとfunction.phpの編集がうまくいかない

なので、Dockerのコンテナ内ファイルを編集する必要がある

コマンドでファイルを直接コピーすることもできるが、ここではDocker画面上から編集する

コンテナ内のfilesタブに入ればWordPressをインストール済みの場合、/var/www/html/wp-content/themes/twentytwentyfour/functions.phpがある

これを右クリックするとEdit fileから編集できる