読者WordPressオリジナルテーマの構築。アーカイブページとシングルページ…は、最初にどこを理解するとよいですか?
木村WordPress標準機能、プラグインの機能、テーマ側の処理を分けて考えると、どこを変更すべきか判断しやすくなります。
読者実際に試すときは、手順だけでなく確認方法も知っておいた方がよいでしょうか?
木村はい。この記事では、作業の目的から実装後の確認までを順番に整理します。自分の環境と照らし合わせながら読み進めてください。
投稿を表示させる
投稿を表示させるでは、WordPressオリジナルテーマの構築。アーカイブページとシングルページの表示方法 #2/4を理解・実装するために必要な考え方と、作業時に確認したい点を整理します。最初に役割を把握してから、記事内の手順へ進みましょう。
まずは以下のように記述してみましょう。 index.php<dl class="flex-row">
<dt>
<?php the_title(); ?>
</dt>
<dd>
<a href="<?php the_permalink(); ?>"><?php the_excerpt(); ?></a>
</dd>
</dl>
サイトの表示

<?php the_title(); ?>
the_title()関数は、現在の投稿やページのタイトルを表示するために使用されます。<?php the_excerpt(); ?>
the_excerpt() 関数は、短縮された抜粋(Excerpt)を表示するために使用されます。<?php the_permalink(); ?>
特定の投稿や固定ページにアクセスするためのURLを自動的に設定してくれます。ここではシングルページに遷移します。詳細ページの作成
詳細ページの作成では、WordPressオリジナルテーマの構築。アーカイブページとシングルページの表示方法 #2/4を理解・実装するために必要な考え方と、作業時に確認したい点を整理します。最初に役割を把握してから、記事内の手順へ進みましょう。
single.php
single.php は、WordPressテーマファイルの一部であり、特定の投稿(Post)や固定ページ(Page)を個別に表示する際に使用されるファイルです。WordPressは、テンプレート階層を持っており、各種コンテンツの表示には対応するテンプレートファイルが使用されます。single.php はその中でも、単一の投稿を表示するためのテンプレートファイルの一つです。Show Current Template
こちらのプラグインをダウンロードしましょう。現在のページがどのテンプレートで表示されているのか表示してくれます。開発には必須のプラグインです。 詳細ページへ遷移ループ文
ループ文では、WordPressオリジナルテーマの構築。アーカイブページとシングルページの表示方法 #2/4を理解・実装するために必要な考え方と、作業時に確認したい点を整理します。最初に役割を把握してから、記事内の手順へ進みましょう。
ループ文を使って投稿内容をすべて表示してみましょう。 index.php<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
<dl class="flex-row">
<dt>
<?php the_title(); ?>
</dt>
<dd>
<a href="<?php the_permalink(); ?>"><?php the_excerpt(); ?></a>
</dd>
</dl>
<?php endwhile; ?>
<?php endif; ?>
ループ文で囲まれたコードを投稿分繰り返します。上記は投稿を5記事分記述し、それを表示している例です。
ループ文で押さえたいポイント
ループ文は、コードや設定だけを切り離して覚えるより、何を変えるための処理なのかを確認してから試すと理解しやすくなります。変更前の状態を控え、作業を一つずつ反映すると、問題が起きた場所も特定しやすくなります。
ループ文の確認方法
ローカル環境で変更し、未ログイン状態と管理者状態の両方で表示を確認します。PHPを変更した場合は、エラーログ、権限、エスケープ処理も合わせて確認してください。
アーカイブページの作成
アーカイブページの作成では、WordPressオリジナルテーマの構築。アーカイブページとシングルページの表示方法 #2/4を理解・実装するために必要な考え方と、作業時に確認したい点を整理します。最初に役割を把握してから、記事内の手順へ進みましょう。
デフォルトでは、アーカイブページは表示されないように設定されていますが、以下の内容をfunctions.phpに記述することで、アーカイブページを表示させることができます。 functions.php ※名前に注意<?php
//---------------------------------------------------------------
// 投稿タイプラベル変更 変更後、パーマリングの設定保存
//---------------------------------------------------------------
function post_has_archive($args, $post_type)
{
if ('post' == $post_type) {
$args['rewrite'] = true;
$args['has_archive'] = 'blog'; //スラッグ名
$args['label'] = 'お知らせ';
}
return $args;
}
add_filter('register_post_type_args', 'post_has_archive', 10, 2);
//---------------------------------------------------------------
// アイキャッチ画像の有効
//---------------------------------------------------------------
add_theme_support('post-thumbnails');パーマリンクの設定
上記を設定後、設定のパーマリンクを更新しましょう。この作業をしないと上手く遷移しないため注意ください。<?php echo home_url(); ?>
WordPressサイトのホームURLを取得するために使用されます。本アーカイブページへ遷移するためにはaタグに<?php echo home_url(); ?>/blogと記述します。まとめ
- WordPressには予め投稿のタイトルやコンテンツを表示してくれる関数が準備されている
- 基本デフォルトの投稿にパーマリンクの関数を設定すると、シングルページに遷移する
- 初期設定ではアーカイブページには遷移できない
- functions.phpにアーカイブページの設定を行う。
- 設定後、パーマリンクの更新が必要である

MEMBER COMMENTS
コメント(0件)