覚え書-#11。

 子テーマの話。
 「o6asan’s netradi」をリニューアルして名前を付け替えたときに,テーマも変更した。で,このときにPink Touch 2というのをカスタマイズして使ったのだが,初めて子テーマの機能を利用した。
 「子テーマ」を見に行ったら,「原文が頻繁に更新されており、情報が古くなっている可能性があります。最新版(英語)も合わせてご覧ください。」と書いてあったので,そっちの方を参考に子テーマを作った。その話を書いていなかったので,思い出したときに書いておこうと思う。

 ところで,その話に入る前に!! 昨日改めて,最新版(英語)を見ていて,「Note on RTL support」というのに気付いた。Pink Touch 2にはrtl.cssがあったから,よく文章も読まずに, @import url("../pink-touch-2/rtl.css");  を入れてみたら,アラビア語みたいに右からの横書きになるのだね。ハハハ,rtl=right-to-leftだから当然でした。なのに,焦りまくりました(大笑い)。

 それはさておき,子テーマの話。

  1. 子テーマ用のフォルダを作る。
    場所は他のテーマと同じようにデフォルトのthemesフォルダの中。
    子テーマのフォルダ名は「親テーマのフォルダ名-child」。
    「o6asan’s netradi」の場合,pink-touch-2-child
  2. pink-touch-2-childの中に子テーマのカスタマイズファイルを入れる。
     指定可能なのは,以下の通りだが,「o6asan’s netradi」で実際に作ったのは最低限のstyle.cssだけ。

    1. style.css (必須)
    2. functions.php (任意)
    3. Template files (任意)
    4. Other files (任意)
  3. style.cssの中は以下の通り。
    /*
    Theme Name: Pink Touch 2 Child
    Template: pink-touch-2
    */

    @import url("../pink-touch-2/style.css");

    #header {
    margin: 0px auto 0px;
    min-height: 0px;
    padding: 20px 0 77px;
    position: relative;
    text-align: center;
    width: 690px;
    }

    一番上の/*~*/が子テーマ独自のヘッダーで,ここでどの親テーマに依存しているかが宣言される。で,定義可能な各行の説明を書くと,

    • Theme Name. (必須) 子テーマの名前.
    • Theme URI. (任意) 子テーマのサイト
    • Description. (任意) このテーマの説明 例:初めての子テーマ。万歳!
    • Author URI. (任意) 作者のサイト
    • Author. (任意) 作者名
    • Template. (必須) 親テーマのディレクトリ名。大文字小文字が区別される。
      • . You have to switch to a different theme and back to the child theme when you modify this line.
        これがよくわからない。「テンプレートのディレクトリを変えたときは,違うテーマに切り替えたのち,子テーマを弄りなさい」というようにとれるが,それだと当たり前すぎて注に書く必要がないような気がする……ウーム
    • Version. (任意) 子テーマのバージョン 例: 0.1, 1.0, など

    で,見ての通り,「o6asan’s netradi」の場合,必須の2行しか書いていない。

    あと,
    @import url("../pink-touch-2/style.css");
    は当然ながら主な部分のスタイルは全て親テーマのを利用させてもらうので,インポートするってこと。#headerだけを独自スタイルにするから,これを書く。完全に独自スタイルにするならば,インポートせずに自分が望むスタイルをここに書けばいいということだ。

  4. 後は,ダッシュボードのメニューからテーマを切り替えて普通どおり使えばいいことになる。これで,親テーマのバージョンアップがあっても,大丈夫。

 実際の話,この話を思い出したのは,Pink Touch 2のバージョンアップがあったからなのだ(爆)。

コメントを残す

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

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