iFeature Proのカスタマイズ
iFeature Proをインストールしていると、ブログ一覧あるいはカテゴリ一覧の表示はiFeature Proによるものになる。
- 投稿の作成時にはiFeature Pro Optionsでスライダ画像の指定ができるようになる。
- ブログ一覧を表示すると、一覧のトップにスライダでそれらの画像が表示できるほか、一覧のエントリにもその画像が表示される。
ところが、カテゴリ一覧では、スライダ画像が表示されない。ここでは、カテゴリ表示でもスライダ画像が表示されるように改造するが、その経過で調査した事項も述べる。
スライダ画像の表示オプション
ダッシュボードから、「外観>iFeature Pro>Design>BLOG>でBLOG OPTIONS」を選択する。 ここのオプションで、
- Hide The Sliderをチェックすると、スライダが表示されなくなる。
Featured Imagesのサイズを変更すると、ブログ一覧に表示されるイメージのサイズが変わる。
例えば、250-Height, 150-Widthとするが、これは幅と高さが逆になっている。幅250、高さが150で表示される。
phpの変更
単純にftpを使ってphpファイルを変更する方法もあるが、ここではダッシュボードから変更してみる。 まず、iFeature Proは「プラグイン」ではなく、「テーマ」であることに注意する。
ダッシュボードからiFeature Proのphpを変更するには、参加サイト>ネットワーク管理者>ダッシュボードを選択し(ネットワーク管理者としてログインが必要)、 テーマ>インストール済テーマをクリックし、iFeature Proの編集をクリックする。 右側にphpファイル一覧が表示されるので、いずれかを選択して編集することができる。
どのphpファイルがどのような役割を持っているか、ドキュメントが見つからないが、一部を調査したところでは以下の通り。
- 404.php:404 エラー時に表示されるファイル。デフォルトでは、ふざけた「猿」の絵が表示されてしまうので、必ず変更しておく必要がある。
- sliderblog.php:通常のブログエントリ一覧表示の際のスライダ部分の作成のみを担う。
- loop.php:通常のブログエントリ一覧表示の際の一エントリ分の表示を担う。
- archive.php:カテゴリを選択したときの表示を担う。
archive.phpの変更
ブログエントリ一覧では、最上部にスライダを表示し、各エントリにそれぞれのスライダ画像が表示されているが、カテゴリを選択して表示させると、いずれも表示されない。 少なくとも各エントリの画像は表示させたいので以下の改造を行う。
archive.phpの中の
<div class="entry"> <?php the_excerpt(); ?> </div>
を削除し、代わりに以下を挿入する。このコードはloop.phpのコードを一部変更したもの。
<?php if ( has_post_thumbnail()) { echo '<div class="featured-image">'; echo '<a href="' . get_permalink($post->ID) . '" >'; the_post_thumbnail(); echo '</a>'; echo '</div>'; } ?> <div class="entry" <?php if ( has_post_thumbnail()) { echo 'style="min-height: 115px;" '; }?>> <?php the_excerpt(); ?> </div>