ページごとにテンプレートを使い分ける

スポンサーリンク
Pocket

 

WordPressの基本構造をちょっと説明しておきます。例えば個別記事のテンプレートは「single.php」です。その「single.php」を開いて中身を見ると大体この3つの記述があります。

1
2
3
<?php get_header(); ?>
<?php get_sidebar(); ?>
<?php get_footer(); ?>

これは上から順番に説明すると

  • 「ヘッダー (header.php)」を読み込む
  • 「サイドバー(sidebar.php)」を読み込む
  • 「フッター(footer.php)」を読み込む

ヘッダーはこのままにしておいて、個別記事のテンプレートとサイドバーを新しく別に作って追加しようという考えです。

1、別テンプレートを使うために必要な物を用意します。

  • プラグイン「Single Post Template」
  • 個別ページのテンプレート「single-2.php」
  • 別テンプレート用のサイドバー「sidebar-2.php」

「Single Post Template」のインストールと有効化

WordPressは固定ページはそれぞれ別のテンプレートを選択できますが、個別記事にその機能はありません。

プラグイン「Single Post Template」を利用する事で個別ページでも別テンプレートを使う事ができるようになります。

WordPressの管理画面からプラグイン⇒新規追加で「Single Post Template」をインストールして有効化します。(必要な設定はありません)

新テンプレート用の個別記事とサイドバーのphpの用意をします

作成する新テンプレートのために「single.php(個別記事)」と「sidebar.php(サイドバー)」の複製を作る作業をします。

ロリポップを利用している場合(他のサーバーでは操作が違うかも・・・・)

ロリポップのユーザー専用ページから「WEBツール」⇒「ロリポップFTP」を起動します。

自分のWordPressのフォルダ⇒「wp-content」⇒「themes」と進みます。

それで自分の利用しているテーマを選択。

自分の利用しているテーマを選択したら(この場合はchild)、そのテーマフォルダの中に「新規ファイル」を作成します。

新規ファイル名は「single-2.php」と名付けました。内容は後でいいのでとりあえず名前だけ書いて保存します。

同じ要領で利用しているテーマ(この例の場合はchild)に「sidebar-2.php」というファイルも追加します。内容は後で記述します。

WordPressに戻って続きの作業を続けます。

新テンプレートの「single-2.php」を編集します。

WordPressの管理画面から⇒「外観」⇒「テーマの編集(エディタ)」を選択し、既存の単一記事の投稿(single.php)の内容を「single-2.php」にコピペします。

貼り付けできたら「single-2.php」に新テンプレートを反映させるための記述をします。「single-2.php」の「先頭」に次のコードをコピペします。

1
2
3
4
5
<?php
/*
Single Post Template: 新テンプレート
*/
?>

「新テンプレート」と書いている部分が新テンプレート名です。書き換えてもOKです。

これでsingle.phpの複製ができたので、複製した「single-2.php」を修正します。アドセンス無しのテンプレートにしたかったので、「single-2.php」からアドセンスの記述を削除しました。

また複製した「single-2.php」には最後に次の記述があります。

1
<?php get_sidebar(); ?>

これはサイドバーを呼び出す「インクルードタグ」ですが、サイドバーもメインと違う物にしたい場合はこれを次ように変更します。

1
<?php get_sidebar("2"); ?>

これでメインのサイドバーではなく、これから作成する新しいサイドバーを呼び出すようになります。この部分を削除するとサイドバー無しのテンプレートになります。

新テンプレートの「sidebar-2.php」を編集します。

新しい個別ページができたので同じ要領でサイドバー(sidebar.php)も複製します。

WordPressの管理画面から⇒「外観」⇒「エディタ(テーマの編集)」を選択し、既存のサイドバー (sidebar.php)の内容を追加した「sidebar-2.php」にコピペします。

修正内容としては名前「sidebar-1」を全て「sidebar-2」に書き替えます。

これで個別ページ(single.php)の複製とサイドバー(sidebar.php)の複製と修正が完了です。

新しいサイドバーの作成

WordPressの管理画面から「外観」⇒「ウィジェット」を進みます。

ウェイジェットには既存の「メインサイドバー」がありますが、その下に「フロントページウェジェットエリア」というのがあるので、それを開いて新しいテンプレートに利用したいウェイジェットを追加します。

テーマによっては「フロントページウェジェットエリア」という名前ではないかも・・・・。

 

以上でサイドバーの作成は終了です。

新テンプレートを作成

これまでの設定で新テンプレートを作成できたので、確認してみます。WordPressで新規投稿または過去記事編集画面を開いたら記事作成画面の下に「Single Post Template」という部分があります、先ほど作成した「新テンプレート」という表示があります。

この追加した新テンプレートを選択して「記事を公開」または「更新」を押すと新しいテンプレート(先ほど作った「single-2.php」と「sidebar-2.php」)が反映されます。

これでページ毎にテンプレートを切り替える事ができるようになりました。

スポンサーリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください