やっぱり子テーマ化
テーマ更新の度に「今度こそ子テーマ化しないぞ!」と意気込むものの、しばらくすると「やっぱり納得いかないなぁ」となり、子テーマを作成してしまいます。今回もそのご多聞に漏れず、、、子テーマ化してしまいました。
と言っても、今回の子テーマで実現する部分は僅かです。大部分を追加CSSのみで対応しているのはそのままです。子テーマで対応したのは、トップページに表示される抜粋に「イイネ!」が含まれることを防止する事です。本文が十分に長い(200文字以上)記事であれば、本文に含まれる「イイネ!」などが抜粋に表示されることはありませんが、稀に記事が短い本文だった場合、本文に含まれる「イイネ!」までトップページの抜粋に含まれてしまいます。実害は無いのですが、表示上あまり美しく無いということで、過去にも子テーマで対応していました。最近は本文の短い記事は書いていなかったのですが、過去記事にもいくつか「イイネ!」が含まれてしまう短い本文の記事があるので、涙を飲んで子テーマで対応することにw
「Fotografie」テーマではトップページを表示するコードは「components/post/content.php」にあります。
<div class="entry-summary"> <?php the_excerpt(); ?> </div><!-- .entry-summary -->
<div class="entry-summary"> <?php ob_start(); the_excerpt(); $str=ob_get_contents(); ob_end_clean(); if (mb_strpos($str, "いいね") === FALSE){ $pieces = explode("取り消す", $str); } else { $pieces = explode("いいね", $str); } echo $pieces[0];?> </div><!-- .entry-summary -->
これで抜粋に「いいね!」が含まれることを防ぐ事が出来ます。子テーマ化自体は従来のやり方と同じです。最低限、必要なファイルは「index.php, functions.php, style.css」です。style.cssに「Template」セクションを追加して「親テーマ名」を指定しますが、これはフォルダ名(大文字、小文字の区別有り)ですのでご注意を。このテーマの場合「Fotografie」ではなく、「fotografie」を指定します。
ちなみに、この記事の冒頭で「いいね!」を「イイネ!」と表現しているのは、抜粋で足切りされるのを防止するタメですw