子テーマ作成プラグイン、『子テーマメーカー』作りました

WordPressでサイトを構築するとき、私の場合はほぼ必ず子テーマを作ってその中をカスタマイズしています。作るときに作り方を忘れて、親テーマを丸ごとコピーしてしまったり、子テーマに必要なファイルは…と自分のblogを見たりしています。
あまり何度もそれをやっていていやになったので、WordPressのプラグインを作ってみました。

とりあえずはHTML+jQuery+phpで作ってみた

いままでずっとWordPressに手を入れるときは使っている子テーマのfunctions.phpで作ってきました。配布する目的が無いということと、プラグインにしてしまうと色々めんどうかなぁと思って。しかし、今回やりたいことは「子テーマを作る」ということなので、子テーマの中にあるfunctions.phpで作るというのも違う気がしました。

とはいえ、プラグインは以前試しに一度だけ作ったことがあるぐらいでそれも1年以上前ですっかり作り方も忘れてしまいました。まずは子テーマを作るために自分が考えているロジックがちゃんと動くか、HTML+jQuery+phpで作ってみました。

仕様は

・画面から親テーマ名、子テーマ名を入力
・送信を押すと、子テーマフォルダ(親テーマ名-子テーマ名)が作られる
・子テーマフォルダの中にはstyle.cssとfunctions.php(空ファイル)が作成されている

です。

ソースはこんな感じです。適当な名前のPHPファイルとして保存して、PHPが動く場所*にこのファイルを置くと動作が確認できます。同じディレクトリにいくつかWordPressのthemesからテーマをコピーしておくといいと思います。
* XAMPPのhtdocsの下のフォルダの中とか、レンタルサーバーのWWWの下とか

こんな感じの画面で、

送信をクリックすると

こんな感じで子テーマ(twentyfourteen-feb)が出来ています。

子テーマの中にこの2ファイルが作成されていて、

style.cssの中身はこんな感じで twentyfourteen の子テーマだという指定が出来ています。

ここまでできあがっていればあとは追加したいcssをstyle.cssに書いたり、追加したい処理をfunctions.phpに書いていけば良さそうです。

作ったPHPをWordPressのプラグインにしてみる

この後は、色々なサイトを参照してプラグインにしてみました。このプラグインを作ろうと思ったときにたぶん調べれば似たようなプラグインがあるんだろうなぁと思ったのですが、プラグインを作るという勉強にもなるし、調べずに作ってみました(^^)/

プラグインは child-theme-maker という名前で作ることにしました。できあがったプラグインにはchild-theme-maker.phpというファイルが一つだけ入っています。

ソースはこんな感じです。zipに圧縮したものをこちらに置きました。もしよろしければ自己責任の範囲で使ってみてください(^_^;。
* 2016/01/18 ファイルの内容を若干変更しました。

このプラグインのフォルダchild-theme-maker wp-content/plugins/  に置きます。

ダッシュボード プラグイン>インストール済みプラグインを見ると

このように Child Theme Maker があるので 有効化 をクリック



設定>Child Theme Maker
 をクリック


 
このように先ほど作ったものと同じような画面が、ダッシュボードに表示されました。

このように入力して 送信 をクリックします。

外観>テーマ をクリック

今作ったテーマが一覧に表示されました。

有効化 をクリックしてみてみると、

twentyfourteenそのままの表示になります。ちゃんと子テーマになってるかどうか、

外観>テーマの編集 をクリックして

これを

こんな風に入力して

img_558cd50741093

ファイルを更新 をクリック

ちゃんと文字の色が変わりました。

こんな感じで、子テーマを簡単に作成して自由に手を入れられるようになりました。

プラグイン化したときに参考にさせてもらったサイトと書籍

ロジックはそれほどむずかしくなかったのですぐに出来たのですが、プラグイン化するのにだいぶ時間がかかりました。
情報はググって色々なサイトから教えてもらいました。

プラグインを作って管理画面メニューに追加する方法
[WordPress] 管理画面にメニュー項目を追加する

セキュアなWordPressプラグインの作り方

セキュアなWORDPRESSプラグインの作り方
グローバル変数・定数:WordPress私的マニュアル

まだこのプラグインでちゃんと出来てるとは思えませんが色々参考になりました。

セキュリティですが具体的な方法はこちらの本がとても参考になりました。

まとめ:今後このプラグインを色々いじっていきたいです

今時点では「とりあえず動く」という感じのモノです。まだ、色々手を入れたいところがあります。

・送信キーを押したときに「子テーマを作成しました」とメッセージを出す
・PHP部分をclassにする
・国際化(英語を入れる?)
・スクリーンショット作成機能

とか。色々思いついてるんですがまずは作ってみました。これからどんどん発展させていきたいと思っています。

兎本美佳

ブログを見た人がそのままできたらいいなと思って、できるだけ丁寧に書いています。blogに書いたようなネタの有償対応のご相談は「ゆうそうと」へいただければと思います(^^)/
無償での対応をご希望の場合は、コメントをいただけましたら可能な場合はコメントを返させていただきます。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
スポンサー広告
ブログをメールで購読

メールアドレスを記入して購読すれば、更新をメールで受信できます。

261人の購読者に加わりましょう

コメント

  1. […] 子テーマ作成プラグイン、『子テーマメーカー』作りました […]

  2. このプラグインは配布していないのですか?

  3. […] といっても自分はFTPとかなるべく使いたくない派なのでこちらのプラグインをいつもありがたくつかわせてもらってます。 […]

  4. […] ダウンロードサイト → 子テーマ作成プラグイン、『子テーマメーカー』作りました […]

トップへ戻る