今まで直接テーマを書き換えていたためかテーマ更新の度に同じ作業をしていたので、面倒だなと思いつつ何か良い方法が無いか調べたところ今更ですが子テーマを作って継承するという方法を見つけました。
今回このブログで行った手順を説明します。(パーミッションの変更とかの細かいところは省略しました。その辺はサーバー環境に合わせて調整して下さい)
子テーマ作成の仕様についてはここでは省略しますので、仕様についてはこちらを参考にしてください。子テーマ – WordPress Codex 日本語版
- テーマのディレクトリに移動して子テーマのディレクトリを作成する
例として小テーマのディレクトリをkidにしました
# cd /var/www/htdocs/wp-content/themes/
# mkdir kid - style.cssを作成する
# cd kid
# vi style.css
中身はこんな感じ(親テーマをtwentytenにしています)
@charset “utf-8”;
/*
Theme Name: kid
Theme URI: http: //example.com/
Description: Twenty Ten theme の子テーマ
Author: Anonymous
Author URI: http: //example.com/about/
Template: twentyten
Version: 0.1.0
*/
@import url(‘../twentyten/style.css’);ここで大事なのはTemplateの部分とimport urlの部分です。ここを間違えるとうまく継承できません。また親テーマと違うスタイルにする場合はこのファイルに追記します。 - 編集するテンプレートを親テーマからコピーする
メニュー下とトップの記事のループそして個別ページの記事の下の部分に広告を付け加えるため以下3つをコピーしました。メニューはheader.php、トップの記事はloop.php、個別ページの記事はloop-single.phpです。
cp -p ../twentyten/header.php ./
cp -p ../twentyten/loop.php ./
cp -p ../twentyten/loop-single.php ./ - Adsense用に編集する
WordPressで有効にする為、管理画面のインストールされているテーマでリストから有効にする。
それぞれのテンプレートにAdsenseのコードを追記します。
例では
メニュー下のテキスト広告 header.php </div><!– #access –>の次
記事ループ中広告 loop.php 一番下の</div><!– #nav-below –>の手前
個別ページ広告 loop-single.php </div><!– #nav-below –>の次
にしました。
あとはブログのテーマを子テーマに変更して終了です。
追記:サイドメニューの広告はウィジェットのテキストで直接Adsenseコードを貼り付けるだけで出来ます。テーマの編集は不要でした。