AFFINGER6の子テーマファイルを自分で修正する人向けの内容です。
疑問
AFFINGER6の子テーマで、投稿ページ(single関連のPHPファイル)を修正したけど、サイトに反映されない・・・
通常であれば、子テーマにコピーしたファイルを修正すれば反映されるのですが、AFFINGER6ではファイルパスの修正も必要になります。
※修正内容はAFFINGER5の時と同じです。
修正を反映させるための方法を紹介します。
AFFINGER6の子テーマファイルを修正したけど反映されない場合の対処方法
AFFINGER6の「投稿ページ」に関連しているPHPファイルは、下記の2ファイルです。
- single.php
- single-type1.php
この2つのファイルをFTPで子テーマフォルダにコピーして修正します。
single.phpを修正する
子テーマの修正をサイトに反映させるためには、single.phpに書いてあるファイルパスの修正が必要です。
変更箇所は下記の場所になります。
「TEMPLATEPATH」を「STYLESHEETPATH」に変更します。
if ((trim($GLOBALS['stdata74']) !== '') && ( in_category($GLOBALS['stdata74']) )) {
include(TEMPLATEPATH . '/single-type2.php');
} else {
include(STYLESHEETPATH . '/single-type1.php');
}
これで、子テーマにあるsingle-type1.phpを読み込むようになります。
single.phpのパスを修正しないと、single-type1.phpの修正はいつまでも反映されません。
single-type1.phpを修正する
投稿ページ自体の修正は、子テーマにコピーしたsingle-type1.phpのファイルを修正します。
アイキャッチ画像の下に広告を挟みたい場合などもこのファイルを修正すればできます。
single-type2.phpのファイルは何?
single-type2.phpは、カテゴリやスラッグによって投稿ページの表示を分けたい時に使うファイルです。
single-type2.phpの表示を使いたい場合は、AFFINGER6の設定も必要になります。
設定方法は、「AFFINGER管理」>「投稿・固定記事」を選択して「表示を変えるカテゴリ(カテゴリID又はスラッグ※上級者用)」にカテゴリIDやスラッグを入力します。
設定を保存すれば、指定したカテゴリやページ(スラッグ)が、single-type2.phpを使って表示されます。
メモ
ただし、最初はsingle-type1.phpと同じ内容なので、自分でsingle-type2.phpの修正が必要です。
これを応用してsingle.phpにカテゴリーやスラッグによる分岐(if文)を作って、それぞれsingle-type3.phpのようなファイルを作れば、表示方法を増やすこともできます。
【まとめ】AFFINGER6の子テーマファイルを修正したけど反映されない場合
下記の2ファイルを親テーマから子テーマフォルダにFTPでコピーします。
- single.php
- single-type1.php
子テーマフォルダにコピーしたsingle.phpの「TEMPLATEPATH」を「STYLESHEETPATH」に変更し、single-type1.phpを修正すれば反映されます。