SlideShare a Scribd company logo
テーマ作成のアプローチ




          2013/02/17 瀬戸 貴弘
瀬戸 貴弘
Twitter   : @as_chachamaru

Facebook : as.chachamaru

職業        : システムエンジニア

WordPress暦
    ブログ開始     Ver2.6~
    本格的な勉強 2012年2月~
APPROACHES
今回のキーワード


 子テーマ


 スクラッチ


 テーマフレームワーク
APPROACHES
例えばこんな人は?



  WordPressでサイト構築したい!

         HTMLやCSS得意じゃないしな・・・


自分のことw
           デザインセンスもないし ( ̄Д ̄;;
            
APPROACHES



公式ディレクトリなどから

完成しているテーマ探すのがはやい!




    http://wordpress.org/extend/themes/
APPROACHES

   アレンジしたくなる


     #content {
       margin: 0 34% 0 7.6%;
       width: 58.4%;
        background-color:red;
     }




   使っているといろいろアレンジしたくなるものです。。
例えばstyle.cssのファイルを直接書き換えてコンテンツ部分背景を赤にしてみた!
APPROACHES

 アレンジしたくなる


  #content {
    margin: 0 34% 0 7.6%;
直接ファイルの上書きはしない方がいい!
    width: 58.4%;
     background-color:red;
  }
APPROACHES

アレンジしたくなる


 #content {

   width: 58.4%;     なぜ?
   margin: 0 34% 0 7.6%;

    background-color:red;
 }
APPROACHES

 アレンジしたくなる


   #content {
     margin: 0 34% 0 7.6%;
     width: 58.4%;
      background-color:red;
   }




テーマは WordPressコアのバージョンアップ対応やバグ修正で
どんどん更新する。誤って更新しちゃうと。。。

  WordPerssは親切なのでテーマに更新があると、管理パネルで知らせてくれる。
APPROACHES

   アレンジしたくなる


    #content {
      margin: 0 34% 0 7.6%;
    アレンジが全て吹っ飛ぶ (ノ゚ρ゚)ノ ォォォ・・ォ・・ォ・
      width: 58.4%;
       background-color:red;
    }




                  テーマの最新バージョンで上書きされる。
新テーマにしちゃおう!                   APPROACHES
                と考えがちですが。。。
 アレンジしたくなる


  #content {
    margin: 0 34% 0 7.6%;
    width: 58.4%;
     background-color:red;       テーマ情報
  }                             書き換えちゃえ!




      Style.css の冒頭の数行を書き換えるだけで新テーマにできる。
APPROACHES

アレンジしたくなる


 #content {
   margin: 0 34% 0 7.6%;
        やらない方がいい!
   width: 58.4%;
    background-color:red;
 }




     自分の新テーマにしてしまえば、テーマの更新はないですが・・・
新テーマにしちゃおう!                    APPROACHES
                 と考えがちですが。。。
  アレンジしたくなる

   #content {
元となるテーマのバージョンアップができなくなる
     margin: 0 34% 0 7.6%;
     width: 58.4%;
      background-color:red;
   }




・WordPressコアのバージョンアップ対応は自分で。
・テーマの不具合対応も自分で。


                       全自己責任
APPROACHES

アレンジしたくなる


 #content {

                どうすれば?
   margin: 0 34% 0 7.6%;
   width: 58.4%;
    background-color:red;
 }
APPROACHES

アレンジしたくなる


 #content {
   margin: 0 34% 0 7.6%;
          子テーマ
   width: 58.4%;
    background-color:red;   おすすめ
 }
子テーマ                 APPROACHES




                        テーマは
                      親子関係が作れる



              親子関係
       親テーマ            子テーマ
子テーマ                                 APPROACHES

  アレンジしたくなる


    #content {
      margin: 0 34% 0 7.6%;
      width: 58.4%;
       background-color:red;
    }




                                親テーマのディレクトリ名




   子供の名前は「Twenty Eleven Kid」。親の名前は「Twenty Eleven」です。
子テーマ                         APPROACHES




                            アレンジしたファイルは
                              子テーマに置く



                   親子関係
       親テーマ                    子テーマ


先ほどと同様ファイルを書き換えますが、書き換えたファイルの置き場所が違う。上書きしない!
子テーマ          APPROACHES




               子テーマが使える範囲は
              親テーマ + 子テーマ
               同じファイル名があれば
                子テーマ優先



       親テーマ     子テーマ
子テーマ                   APPROACHES




               実質ファイルの上書き




       親テーマ                 子テーマ
子テーマ                   APPROACHES




       親テーマ            子テーマは
       更新しても           影響受けない




       親テーマ              子テーマ


親テーマはテーマ開発者に更新させればいい!アレンジ部分だけ自分で管理。
APPROACHES

 アレンジしたくなる


  #content {
親テーマがどのように更新されるか
    margin: 0 34% 0 7.6%;
    width: 58.4%;
わからないので更新したら全体チェックは必要!
     background-color:red;
  }
APPROACHES


子テーマ


 親テーマの機能を継承し、その機能にさらに機能        長所
 を追加したりその機能を調整したりする

  短時間で簡単にカスタマイズできる。
  親テーマをバージョンアップしても子テーマの変更は
  維持される。
APPROACHES


子テーマ


 親テーマの機能を継承し、その機能にさらに機能        短所
 を追加したりその機能を調整したりする

  親テーマに大きく依存する。
  親テーマ解析のために時間必要(開発者の癖)。
  アレンジが多すぎるとほとんど書き換えて子テーマ使
  う意味あるの?
APPROACHES
子テーマ

 アレンジしやすさ




        子


                               開発工数

CSSだけ変更など変更点を最小限に済ませれば非常に開発工数が短縮できる。
APPROACHES
例えばこんな人は?




お客さんの要望に極力応えたい

    UIが先に決まってぴったしのテーマが
    見つからない


       ゼロから作らないと気がすまない!
    欲しいテーマが見つからないなら
      自分でつくっちゃえ!         APPROACHES




        何も無い状態からコードを記述していくこと


                 スクラッチ
スクラッチ
                    APPROACHES




管理パネルでいろいろ設定したり、投稿できるよね
スクラッチ
                 APPROACHES




        テーマに反映できる?
スクラッチ
                                      APPROACHES




    どうやって反映していいかわからない!
    何をしていいかわからない!




    テーマ作成のガイドラインがある!



        http://wpdocs.sourceforge.jp/Theme_Review
スクラッチ
                      APPROACHES




                      本体機能の組み込む
                      テンプレートタグ




        例えば機能の組み込み
スクラッチ
           APPROACHES




        ガイドラインは公式ディレクトリに
        公開するためのテーマ作成用
        無理に全部適応する必要はないが、
        信頼・安定したテーマ作成の参考になる
スクラッチ
                        APPROACHES




ガイドラインに従って1つ1つ確認していくと時間がかかる。

だからといってチェックしないで、
お客さんからのクレームで修正すると信頼を落とす。

                  そこで



        Theme-Check プラグイン
スクラッチ
            APPROACHES




        【Theme-Check】
         ガイドラインに従ってチェックしてくれる。
         (必須・警告・推奨・情報など)
スクラッチ
                            APPROACHES




          Theme-Check プラグイン
           効率よくテーマを開発できる!




Theme-Checkはあくまでチェックなのでガイドラインに従った組み込みは勉強必要
APPROACHES


スクラッチ


 何も無い状態からコードを記述していくこと            長所


   細かいところまで制御できる。
   顧客の要望に応えやすい。
APPROACHES


スクラッチ


 何も無い状態からコードを記述していくこと                   短所


   時間がかかる。
   テーマ作成に知識が必要。
     ※テンプレート階層、プラグイン API フックなど
   HTML、CSSやJavascriptの知識も必要。
APPROACHES
スクラッチ

 アレンジしやすさ


                                ス




          子


                                    開発工数

        ゼロから作くるから好きなように。。でも時間かかるよ
APPROACHES
テーマ作成のアプローチ

 アレンジしやすさ


                                   ス



        テーマが完成しすぎて         開発に時間がかかり
        お客さんの要望が多い         すぎる。素人には難しい。
        と使いにくい。


          子


    子   子テーマ   ス   スクラッチ               開発工数
APPROACHES
テーマ作成のアプローチ

 アレンジしやすさ


                                    ス
               ここの段階が
               あれば便利だな!


                           ?



          子


    子   子テーマ   ス   スクラッチ                開発工数
APPROACHES
テーマ作成のアプローチ

 アレンジしやすさ


                                    ス

          テーマフレームワーク

                           フ



          子


    子   子テーマ   ス   スクラッチ                開発工数
テーマフレームワーク                          APPROACHES




"Theme Framework" という言葉は
               現在2つの意味を持つ




    http://codex.wordpress.org/Theme_Frameworks
テーマフレームワーク                            APPROACHES




 "Theme Framework" という言葉は
                現在2つの意味を持つ

  1     テーマの開発を助長するのに使われる
                 "ドロップイン"コードライブラリ

  2     他のテーマにフォークされる、または親テーマテン
        プレートとして使われるようなスタンドアローンの
        base/starterテーマ




      http://codex.wordpress.org/Theme_Frameworks
テーマフレームワーク                       APPROACHES




 A "drop-in" code library framework

    スタンドアローンテーマではない。

    functions.phpファイルに組み込むことによって
    テーマをブートストラップする。

    日本語ドキュメントがほとんどない。
    有料が多い。




            こんなのがあるんだと頭の片隅にでも
テーマフレームワーク                 APPROACHES




 Base/Starter Theme

   スタンドアローンテーマではある。

   テーマ開発をすばやく・柔軟にできる土台として設計。

   一般に親テーマになるように提供される。子テーマ機能
   を使ってテーマ開発を行う。




         最近よく耳にするスターターテーマはこれのこと
Base/Starter Theme
                                           APPROACHES




          スタンドアローンテーマ



      (一般のテーマ)        Base/Starter Theme
      親テーマに                     スタンドアローン
      なれるよ                       テーマだよ




技術的にスタンドアローンテーマなら子テーマに対する親テーマとして使える。何が違うの?
Base/Starter Theme
                                          APPROACHES




         スタンドアローンテーマ



     (一般のテーマ)        Base/Starter Theme

                         親テーマになること、フォークされことに特化!
Base/Starter Theme
                                                 APPROACHES




                スタンドアローンテーマ



            (一般のテーマ)        Base/Starter Theme
【特化】
  現状のまま使うこともできるが、サイトデザインを仕上げるようなCSSスタイルや他の要素が欠けてい
  ることがある。なぜならそのような要素は子テーマやフォークされる/派生テーマで加えられることを意
  図されている。
APPROACHES
Base/Starter Theme

 アレンジしやすさ


            ゼロでもなく完成もしていないテーマ。            ス
            ガイドラインに沿ってある程度枠組み作って
            あげるからデザインは仕上げてください。



                             フ



            子


      子   子テーマ   ス   スクラッチ   フ   テーマフレームワーク   開発工数
Base/Starter Theme
                                     APPROACHES




現状のまま使うこともできるが、サイトデザインを仕上げるようなCSSスタイルや他の要素が欠けてい
ることがある。なぜならそのような要素は子テーマやフォークされる/派生テーマで加えられることを意
図されている。
          Underscores: Automattic社が開発したスターターテーマ
Base/Starter Theme
                            APPROACHES




            ジェネレータを使って新規テーマを作成できる
Base/Starter Theme
                                  APPROACHES




       _s を Theme-Checkでチェックしてみた。WARNINGが1つあり。
Base/Starter Theme
                                             APPROACHES




                                 style.css headerから取り除く




    WARNING: Found wrong tag, remove from your style.css header. 
Base/Starter Theme
                             APPROACHES




        テストに合格! ガイドラインに沿ったベーステーマとなる。 
Base/Starter Theme
                             APPROACHES




            _s をそのまま表示。デザイン装飾が全くない。
            サイトデザインはフォークまたは子テーマで仕上げる。
APPROACHES
まとめ

 アレンジしやすさ
                 [base/starter テーマ]
                  ガイドラインを満たした基礎テーマと
                  なるので工数短縮。デザインをフォーク
                  または子テーマで仕上げる前提なので         ス
                  アレンジしやすい。



                                       長所:顧客要望に応えすい。
 長所:親テーマに大きく依存する。             フ        短所:開発に時間がかかる。
 短所:開発工数が短縮できる。                           初心者には難しい。




            子


      子   子テーマ    ス   スクラッチ   フ   テーマフレームワーク    開発工数
APPROACHES
所感



 初心者の方は余計な装飾がなくソースがみやすいスターターテーマ
 で勉強すればわかりやすいと思います。ガイドラインに沿った最低
 限の組み方が学べます。


 WordPressを使った案件が多いなら、業種にあったオリジナルのスタータ
 テーマを作るのもいいかも。お客さんごとのアレンジは子テーマですると開
 発効率も上がります。


 WordPressのテーマアプローチは、予算・工数・要望などにより最適なもは
 違います。アプローチの選択肢に、テーマフレームワーク(スタータテー
 マ・機能拡張ライブラリなど)もあることを覚えておきましょう!
APPROACHES




ご静聴ありがとうございます。

More Related Content

What's hot

WordPress中級者への道!テンプレートタグはどう動くのか!?
WordPress中級者への道!テンプレートタグはどう動くのか!?WordPress中級者への道!テンプレートタグはどう動くのか!?
WordPress中級者への道!テンプレートタグはどう動くのか!?
Shinichi Nishikawa
 
ノンプログラマーのためのWordPressテーマ作成ステップアップ術
ノンプログラマーのためのWordPressテーマ作成ステップアップ術ノンプログラマーのためのWordPressテーマ作成ステップアップ術
ノンプログラマーのためのWordPressテーマ作成ステップアップ術
Mignon Style
 
⑮jQueryをおぼえよう!その1
⑮jQueryをおぼえよう!その1⑮jQueryをおぼえよう!その1
⑮jQueryをおぼえよう!その1
Nishida Kansuke
 
アプリ開発を効率化する 方法あれこれ
アプリ開発を効率化する 方法あれこれアプリ開発を効率化する 方法あれこれ
アプリ開発を効率化する 方法あれこれ
Atsushi Mizoue
 
Bootstrapを使って効率よくWordPressオリジナルテーマを作る
Bootstrapを使って効率よくWordPressオリジナルテーマを作るBootstrapを使って効率よくWordPressオリジナルテーマを作る
Bootstrapを使って効率よくWordPressオリジナルテーマを作る
Yoshinori Kobayashi
 
これからWordPressのテーマ制作をはじめる人のために 〜テーマを作って公式ディレクトリに登録しよう!〜
これからWordPressのテーマ制作をはじめる人のために 〜テーマを作って公式ディレクトリに登録しよう!〜これからWordPressのテーマ制作をはじめる人のために 〜テーマを作って公式ディレクトリに登録しよう!〜
これからWordPressのテーマ制作をはじめる人のために 〜テーマを作って公式ディレクトリに登録しよう!〜
Mignon Style
 
⑳CSSでアニメーション!その1
⑳CSSでアニメーション!その1⑳CSSでアニメーション!その1
⑳CSSでアニメーション!その1
Nishida Kansuke
 
一歩進んだ Views の使い方
一歩進んだ Views の使い方一歩進んだ Views の使い方
一歩進んだ Views の使い方
matcha_dev
 
PHP版レガシーコード改善に役立つ新パターン #wewlc_jp
PHP版レガシーコード改善に役立つ新パターン #wewlc_jp PHP版レガシーコード改善に役立つ新パターン #wewlc_jp
PHP版レガシーコード改善に役立つ新パターン #wewlc_jp
Yahoo!デベロッパーネットワーク
 
速度改善のためにフロント:アプリ:インフラ エンジニアが使うツールについて
速度改善のためにフロント:アプリ:インフラ エンジニアが使うツールについて速度改善のためにフロント:アプリ:インフラ エンジニアが使うツールについて
速度改善のためにフロント:アプリ:インフラ エンジニアが使うツールについて
Daisuke Tamada
 
ノンプログラマーのためのWordPressプラグイン作成超入門 | Mignon Style
ノンプログラマーのためのWordPressプラグイン作成超入門 | Mignon StyleノンプログラマーのためのWordPressプラグイン作成超入門 | Mignon Style
ノンプログラマーのためのWordPressプラグイン作成超入門 | Mignon Style
Mignon Style
 
4時間まったりWordPressテーマ作成講座
4時間まったりWordPressテーマ作成講座4時間まったりWordPressテーマ作成講座
4時間まったりWordPressテーマ作成講座Shinichi Nishikawa
 
Webform の活用
Webform の活用Webform の活用
Webform の活用
matcha_dev
 

What's hot (14)

WordPress中級者への道!テンプレートタグはどう動くのか!?
WordPress中級者への道!テンプレートタグはどう動くのか!?WordPress中級者への道!テンプレートタグはどう動くのか!?
WordPress中級者への道!テンプレートタグはどう動くのか!?
 
ノンプログラマーのためのWordPressテーマ作成ステップアップ術
ノンプログラマーのためのWordPressテーマ作成ステップアップ術ノンプログラマーのためのWordPressテーマ作成ステップアップ術
ノンプログラマーのためのWordPressテーマ作成ステップアップ術
 
⑮jQueryをおぼえよう!その1
⑮jQueryをおぼえよう!その1⑮jQueryをおぼえよう!その1
⑮jQueryをおぼえよう!その1
 
アプリ開発を効率化する 方法あれこれ
アプリ開発を効率化する 方法あれこれアプリ開発を効率化する 方法あれこれ
アプリ開発を効率化する 方法あれこれ
 
Bootstrapを使って効率よくWordPressオリジナルテーマを作る
Bootstrapを使って効率よくWordPressオリジナルテーマを作るBootstrapを使って効率よくWordPressオリジナルテーマを作る
Bootstrapを使って効率よくWordPressオリジナルテーマを作る
 
これからWordPressのテーマ制作をはじめる人のために 〜テーマを作って公式ディレクトリに登録しよう!〜
これからWordPressのテーマ制作をはじめる人のために 〜テーマを作って公式ディレクトリに登録しよう!〜これからWordPressのテーマ制作をはじめる人のために 〜テーマを作って公式ディレクトリに登録しよう!〜
これからWordPressのテーマ制作をはじめる人のために 〜テーマを作って公式ディレクトリに登録しよう!〜
 
⑳CSSでアニメーション!その1
⑳CSSでアニメーション!その1⑳CSSでアニメーション!その1
⑳CSSでアニメーション!その1
 
2479
24792479
2479
 
一歩進んだ Views の使い方
一歩進んだ Views の使い方一歩進んだ Views の使い方
一歩進んだ Views の使い方
 
PHP版レガシーコード改善に役立つ新パターン #wewlc_jp
PHP版レガシーコード改善に役立つ新パターン #wewlc_jp PHP版レガシーコード改善に役立つ新パターン #wewlc_jp
PHP版レガシーコード改善に役立つ新パターン #wewlc_jp
 
速度改善のためにフロント:アプリ:インフラ エンジニアが使うツールについて
速度改善のためにフロント:アプリ:インフラ エンジニアが使うツールについて速度改善のためにフロント:アプリ:インフラ エンジニアが使うツールについて
速度改善のためにフロント:アプリ:インフラ エンジニアが使うツールについて
 
ノンプログラマーのためのWordPressプラグイン作成超入門 | Mignon Style
ノンプログラマーのためのWordPressプラグイン作成超入門 | Mignon StyleノンプログラマーのためのWordPressプラグイン作成超入門 | Mignon Style
ノンプログラマーのためのWordPressプラグイン作成超入門 | Mignon Style
 
4時間まったりWordPressテーマ作成講座
4時間まったりWordPressテーマ作成講座4時間まったりWordPressテーマ作成講座
4時間まったりWordPressテーマ作成講座
 
Webform の活用
Webform の活用Webform の活用
Webform の活用
 

Similar to テーマ作成のアプローチ

CSS Nite in OSAKA, Vol.32:デザイナーのためのWordPressカスタマイズ
CSS Nite in OSAKA, Vol.32:デザイナーのためのWordPressカスタマイズCSS Nite in OSAKA, Vol.32:デザイナーのためのWordPressカスタマイズ
CSS Nite in OSAKA, Vol.32:デザイナーのためのWordPressカスタマイズ
rie05
 
テーマ制作時の疑問とノンプログラマーにも優しいテーマを考える
テーマ制作時の疑問とノンプログラマーにも優しいテーマを考えるテーマ制作時の疑問とノンプログラマーにも優しいテーマを考える
テーマ制作時の疑問とノンプログラマーにも優しいテーマを考える
Tsuyoshi.
 
WordPress アジュール部 テーマ制作について考えること
WordPress アジュール部 テーマ制作について考えることWordPress アジュール部 テーマ制作について考えること
WordPress アジュール部 テーマ制作について考えること
Web nist
 
WordPressテーマ Foundation for WordPress の紹介
WordPressテーマ Foundation for WordPress の紹介WordPressテーマ Foundation for WordPress の紹介
WordPressテーマ Foundation for WordPress の紹介
Takashi Uemura
 
7/7 WordBench kobe dreamweaver seminar
7/7 WordBench kobe dreamweaver seminar7/7 WordBench kobe dreamweaver seminar
7/7 WordBench kobe dreamweaver seminar
Atushi Sugiyama
 
WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)
WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)
WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)
Takashi Uemura
 
WordPressの常識をくつがえす超簡単テーマ doshirouto2014 を作ったのでこれでテーマを理解しよう!
WordPressの常識をくつがえす超簡単テーマ doshirouto2014 を作ったのでこれでテーマを理解しよう!WordPressの常識をくつがえす超簡単テーマ doshirouto2014 を作ったのでこれでテーマを理解しよう!
WordPressの常識をくつがえす超簡単テーマ doshirouto2014 を作ったのでこれでテーマを理解しよう!
Takashi Uemura
 
中級者のためのWordPress講座[第2回]WordPressテーマをカスタマイズしてみよう!
中級者のためのWordPress講座[第2回]WordPressテーマをカスタマイズしてみよう!中級者のためのWordPress講座[第2回]WordPressテーマをカスタマイズしてみよう!
中級者のためのWordPress講座[第2回]WordPressテーマをカスタマイズしてみよう!
switch3000
 
第18回WordBench大阪【2013年6月23日】
第18回WordBench大阪【2013年6月23日】第18回WordBench大阪【2013年6月23日】
第18回WordBench大阪【2013年6月23日】rie05
 
WordPressってブログじゃないの?
WordPressってブログじゃないの?WordPressってブログじゃないの?
WordPressってブログじゃないの?tokumotonahoko
 
Word pressはじめの一歩 テーマ作成ハンズオン
Word pressはじめの一歩 テーマ作成ハンズオンWord pressはじめの一歩 テーマ作成ハンズオン
Word pressはじめの一歩 テーマ作成ハンズオン
Hidetaka Okamoto
 
静的HTMLファイルをWordPressのテーマにするワークショップ
静的HTMLファイルをWordPressのテーマにするワークショップ静的HTMLファイルをWordPressのテーマにするワークショップ
静的HTMLファイルをWordPressのテーマにするワークショップ
masaya yamao
 
WordBench熊本第3回勉強会
WordBench熊本第3回勉強会WordBench熊本第3回勉強会
WordBench熊本第3回勉強会
Akinori Tateyama
 
Wordpressスマートフォンテーマ作成
Wordpressスマートフォンテーマ作成Wordpressスマートフォンテーマ作成
Wordpressスマートフォンテーマ作成
Yoshie Nakayama
 
コーディングが上達するコツ
コーディングが上達するコツコーディングが上達するコツ
コーディングが上達するコツ
evol-ni
 
更新作業で消耗しない!Web製作者のためのWordPress公式ディレクトリ活用術
更新作業で消耗しない!Web製作者のためのWordPress公式ディレクトリ活用術更新作業で消耗しない!Web製作者のためのWordPress公式ディレクトリ活用術
更新作業で消耗しない!Web製作者のためのWordPress公式ディレクトリ活用術
Mignon Style
 
【10人限定】1日でマスター!word pressのための「php:mysql講座」
【10人限定】1日でマスター!word pressのための「php:mysql講座」【10人限定】1日でマスター!word pressのための「php:mysql講座」
【10人限定】1日でマスター!word pressのための「php:mysql講座」
光利 吉田
 
WordPress基礎講座5 テーマ作成基礎知識
WordPress基礎講座5 テーマ作成基礎知識WordPress基礎講座5 テーマ作成基礎知識
WordPress基礎講座5 テーマ作成基礎知識
Akinori Kawamitsu
 
基本の WordPress コーディング規約 / WordCamp Tokyo 2016 LT
基本の WordPress コーディング規約 / WordCamp Tokyo 2016 LT基本の WordPress コーディング規約 / WordCamp Tokyo 2016 LT
基本の WordPress コーディング規約 / WordCamp Tokyo 2016 LT
Akira Tachibana
 

Similar to テーマ作成のアプローチ (20)

CSS Nite in OSAKA, Vol.32:デザイナーのためのWordPressカスタマイズ
CSS Nite in OSAKA, Vol.32:デザイナーのためのWordPressカスタマイズCSS Nite in OSAKA, Vol.32:デザイナーのためのWordPressカスタマイズ
CSS Nite in OSAKA, Vol.32:デザイナーのためのWordPressカスタマイズ
 
テーマ制作時の疑問とノンプログラマーにも優しいテーマを考える
テーマ制作時の疑問とノンプログラマーにも優しいテーマを考えるテーマ制作時の疑問とノンプログラマーにも優しいテーマを考える
テーマ制作時の疑問とノンプログラマーにも優しいテーマを考える
 
WordPress アジュール部 テーマ制作について考えること
WordPress アジュール部 テーマ制作について考えることWordPress アジュール部 テーマ制作について考えること
WordPress アジュール部 テーマ制作について考えること
 
WordPressテーマ Foundation for WordPress の紹介
WordPressテーマ Foundation for WordPress の紹介WordPressテーマ Foundation for WordPress の紹介
WordPressテーマ Foundation for WordPress の紹介
 
7/7 WordBench kobe dreamweaver seminar
7/7 WordBench kobe dreamweaver seminar7/7 WordBench kobe dreamweaver seminar
7/7 WordBench kobe dreamweaver seminar
 
WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)
WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)
WordPressのオススメスライドとか記事とか集めました。(2012.10.13 WordBench神戸)
 
WordPressの常識をくつがえす超簡単テーマ doshirouto2014 を作ったのでこれでテーマを理解しよう!
WordPressの常識をくつがえす超簡単テーマ doshirouto2014 を作ったのでこれでテーマを理解しよう!WordPressの常識をくつがえす超簡単テーマ doshirouto2014 を作ったのでこれでテーマを理解しよう!
WordPressの常識をくつがえす超簡単テーマ doshirouto2014 を作ったのでこれでテーマを理解しよう!
 
中級者のためのWordPress講座[第2回]WordPressテーマをカスタマイズしてみよう!
中級者のためのWordPress講座[第2回]WordPressテーマをカスタマイズしてみよう!中級者のためのWordPress講座[第2回]WordPressテーマをカスタマイズしてみよう!
中級者のためのWordPress講座[第2回]WordPressテーマをカスタマイズしてみよう!
 
第18回WordBench大阪【2013年6月23日】
第18回WordBench大阪【2013年6月23日】第18回WordBench大阪【2013年6月23日】
第18回WordBench大阪【2013年6月23日】
 
WordPressってブログじゃないの?
WordPressってブログじゃないの?WordPressってブログじゃないの?
WordPressってブログじゃないの?
 
Word pressはじめの一歩 テーマ作成ハンズオン
Word pressはじめの一歩 テーマ作成ハンズオンWord pressはじめの一歩 テーマ作成ハンズオン
Word pressはじめの一歩 テーマ作成ハンズオン
 
静的HTMLファイルをWordPressのテーマにするワークショップ
静的HTMLファイルをWordPressのテーマにするワークショップ静的HTMLファイルをWordPressのテーマにするワークショップ
静的HTMLファイルをWordPressのテーマにするワークショップ
 
WordBench熊本第3回勉強会
WordBench熊本第3回勉強会WordBench熊本第3回勉強会
WordBench熊本第3回勉強会
 
Wordpressスマートフォンテーマ作成
Wordpressスマートフォンテーマ作成Wordpressスマートフォンテーマ作成
Wordpressスマートフォンテーマ作成
 
コーディングが上達するコツ
コーディングが上達するコツコーディングが上達するコツ
コーディングが上達するコツ
 
更新作業で消耗しない!Web製作者のためのWordPress公式ディレクトリ活用術
更新作業で消耗しない!Web製作者のためのWordPress公式ディレクトリ活用術更新作業で消耗しない!Web製作者のためのWordPress公式ディレクトリ活用術
更新作業で消耗しない!Web製作者のためのWordPress公式ディレクトリ活用術
 
【10人限定】1日でマスター!word pressのための「php:mysql講座」
【10人限定】1日でマスター!word pressのための「php:mysql講座」【10人限定】1日でマスター!word pressのための「php:mysql講座」
【10人限定】1日でマスター!word pressのための「php:mysql講座」
 
WordPress基礎講座5 テーマ作成基礎知識
WordPress基礎講座5 テーマ作成基礎知識WordPress基礎講座5 テーマ作成基礎知識
WordPress基礎講座5 テーマ作成基礎知識
 
基本の WordPress コーディング規約 / WordCamp Tokyo 2016 LT
基本の WordPress コーディング規約 / WordCamp Tokyo 2016 LT基本の WordPress コーディング規約 / WordCamp Tokyo 2016 LT
基本の WordPress コーディング規約 / WordCamp Tokyo 2016 LT
 
Wp html5
Wp html5Wp html5
Wp html5
 

More from Seto Takahiro

WordPressプラグイン開発の めんどうな作業は執事(Jenkins)にお任せ
WordPressプラグイン開発の めんどうな作業は執事(Jenkins)にお任せWordPressプラグイン開発の めんどうな作業は執事(Jenkins)にお任せ
WordPressプラグイン開発の めんどうな作業は執事(Jenkins)にお任せ
Seto Takahiro
 
WordPress の .htaccess って何者?
WordPress の .htaccess って何者?WordPress の .htaccess って何者?
WordPress の .htaccess って何者?
Seto Takahiro
 
デザイナさん向けWordPressフックの勉強
デザイナさん向けWordPressフックの勉強デザイナさん向けWordPressフックの勉強
デザイナさん向けWordPressフックの勉強
Seto Takahiro
 
WordPressプラグイン開発で学ぶ継続インテグレーション(CI)
WordPressプラグイン開発で学ぶ継続インテグレーション(CI)WordPressプラグイン開発で学ぶ継続インテグレーション(CI)
WordPressプラグイン開発で学ぶ継続インテグレーション(CI)
Seto Takahiro
 
世界の最前線!VagrantやWP-CLIなどで開発環境をパワーアップ!
世界の最前線!VagrantやWP-CLIなどで開発環境をパワーアップ!世界の最前線!VagrantやWP-CLIなどで開発環境をパワーアップ!
世界の最前線!VagrantやWP-CLIなどで開発環境をパワーアップ!
Seto Takahiro
 
WordPressとjQuery
WordPressとjQueryWordPressとjQuery
WordPressとjQuery
Seto Takahiro
 
Trust form (お問い合わせフォームプラグイン)について
Trust form (お問い合わせフォームプラグイン)についてTrust form (お問い合わせフォームプラグイン)について
Trust form (お問い合わせフォームプラグイン)についてSeto Takahiro
 
リリース直前WordPress3.5をみてみよう
リリース直前WordPress3.5をみてみようリリース直前WordPress3.5をみてみよう
リリース直前WordPress3.5をみてみよう
Seto Takahiro
 

More from Seto Takahiro (8)

WordPressプラグイン開発の めんどうな作業は執事(Jenkins)にお任せ
WordPressプラグイン開発の めんどうな作業は執事(Jenkins)にお任せWordPressプラグイン開発の めんどうな作業は執事(Jenkins)にお任せ
WordPressプラグイン開発の めんどうな作業は執事(Jenkins)にお任せ
 
WordPress の .htaccess って何者?
WordPress の .htaccess って何者?WordPress の .htaccess って何者?
WordPress の .htaccess って何者?
 
デザイナさん向けWordPressフックの勉強
デザイナさん向けWordPressフックの勉強デザイナさん向けWordPressフックの勉強
デザイナさん向けWordPressフックの勉強
 
WordPressプラグイン開発で学ぶ継続インテグレーション(CI)
WordPressプラグイン開発で学ぶ継続インテグレーション(CI)WordPressプラグイン開発で学ぶ継続インテグレーション(CI)
WordPressプラグイン開発で学ぶ継続インテグレーション(CI)
 
世界の最前線!VagrantやWP-CLIなどで開発環境をパワーアップ!
世界の最前線!VagrantやWP-CLIなどで開発環境をパワーアップ!世界の最前線!VagrantやWP-CLIなどで開発環境をパワーアップ!
世界の最前線!VagrantやWP-CLIなどで開発環境をパワーアップ!
 
WordPressとjQuery
WordPressとjQueryWordPressとjQuery
WordPressとjQuery
 
Trust form (お問い合わせフォームプラグイン)について
Trust form (お問い合わせフォームプラグイン)についてTrust form (お問い合わせフォームプラグイン)について
Trust form (お問い合わせフォームプラグイン)について
 
リリース直前WordPress3.5をみてみよう
リリース直前WordPress3.5をみてみようリリース直前WordPress3.5をみてみよう
リリース直前WordPress3.5をみてみよう
 

テーマ作成のアプローチ

  • 1. テーマ作成のアプローチ 2013/02/17 瀬戸 貴弘
  • 2. 瀬戸 貴弘 Twitter : @as_chachamaru Facebook : as.chachamaru 職業 : システムエンジニア WordPress暦 ブログ開始 Ver2.6~ 本格的な勉強 2012年2月~
  • 4. APPROACHES 例えばこんな人は? WordPressでサイト構築したい! HTMLやCSS得意じゃないしな・・・ 自分のことw デザインセンスもないし ( ̄Д ̄;;  
  • 6. APPROACHES アレンジしたくなる #content {   margin: 0 34% 0 7.6%;   width: 58.4%; background-color:red; } 使っているといろいろアレンジしたくなるものです。。 例えばstyle.cssのファイルを直接書き換えてコンテンツ部分背景を赤にしてみた!
  • 7. APPROACHES アレンジしたくなる #content {   margin: 0 34% 0 7.6%; 直接ファイルの上書きはしない方がいい!   width: 58.4%; background-color:red; }
  • 8. APPROACHES アレンジしたくなる #content {   width: 58.4%; なぜ?   margin: 0 34% 0 7.6%; background-color:red; }
  • 9. APPROACHES アレンジしたくなる #content {   margin: 0 34% 0 7.6%;   width: 58.4%; background-color:red; } テーマは WordPressコアのバージョンアップ対応やバグ修正で どんどん更新する。誤って更新しちゃうと。。。 WordPerssは親切なのでテーマに更新があると、管理パネルで知らせてくれる。
  • 10. APPROACHES アレンジしたくなる #content {   margin: 0 34% 0 7.6%;     アレンジが全て吹っ飛ぶ (ノ゚ρ゚)ノ ォォォ・・ォ・・ォ・   width: 58.4%; background-color:red; } テーマの最新バージョンで上書きされる。
  • 11. 新テーマにしちゃおう! APPROACHES と考えがちですが。。。 アレンジしたくなる #content {   margin: 0 34% 0 7.6%;   width: 58.4%; background-color:red; テーマ情報 } 書き換えちゃえ! Style.css の冒頭の数行を書き換えるだけで新テーマにできる。
  • 12. APPROACHES アレンジしたくなる #content {   margin: 0 34% 0 7.6%;     やらない方がいい!   width: 58.4%; background-color:red; } 自分の新テーマにしてしまえば、テーマの更新はないですが・・・
  • 13. 新テーマにしちゃおう! APPROACHES と考えがちですが。。。 アレンジしたくなる #content { 元となるテーマのバージョンアップができなくなる   margin: 0 34% 0 7.6%;   width: 58.4%; background-color:red; } ・WordPressコアのバージョンアップ対応は自分で。 ・テーマの不具合対応も自分で。 全自己責任
  • 14. APPROACHES アレンジしたくなる #content { どうすれば?   margin: 0 34% 0 7.6%;   width: 58.4%; background-color:red; }
  • 15. APPROACHES アレンジしたくなる #content {   margin: 0 34% 0 7.6%; 子テーマ   width: 58.4%; background-color:red; おすすめ }
  • 16. 子テーマ APPROACHES テーマは 親子関係が作れる 親子関係 親テーマ 子テーマ
  • 17. 子テーマ APPROACHES アレンジしたくなる #content {   margin: 0 34% 0 7.6%;   width: 58.4%; background-color:red; } 親テーマのディレクトリ名 子供の名前は「Twenty Eleven Kid」。親の名前は「Twenty Eleven」です。
  • 18. 子テーマ APPROACHES アレンジしたファイルは 子テーマに置く 親子関係 親テーマ 子テーマ 先ほどと同様ファイルを書き換えますが、書き換えたファイルの置き場所が違う。上書きしない!
  • 19. 子テーマ APPROACHES 子テーマが使える範囲は 親テーマ + 子テーマ 同じファイル名があれば 子テーマ優先 親テーマ 子テーマ
  • 20. 子テーマ APPROACHES  実質ファイルの上書き 親テーマ 子テーマ
  • 21. 子テーマ APPROACHES 親テーマ 子テーマは 更新しても  影響受けない 親テーマ 子テーマ 親テーマはテーマ開発者に更新させればいい!アレンジ部分だけ自分で管理。
  • 22. APPROACHES アレンジしたくなる #content { 親テーマがどのように更新されるか   margin: 0 34% 0 7.6%;   width: 58.4%; わからないので更新したら全体チェックは必要! background-color:red; }
  • 23. APPROACHES 子テーマ 親テーマの機能を継承し、その機能にさらに機能 長所 を追加したりその機能を調整したりする 短時間で簡単にカスタマイズできる。 親テーマをバージョンアップしても子テーマの変更は 維持される。
  • 24. APPROACHES 子テーマ 親テーマの機能を継承し、その機能にさらに機能 短所 を追加したりその機能を調整したりする 親テーマに大きく依存する。 親テーマ解析のために時間必要(開発者の癖)。 アレンジが多すぎるとほとんど書き換えて子テーマ使 う意味あるの?
  • 25. APPROACHES 子テーマ アレンジしやすさ 子 開発工数 CSSだけ変更など変更点を最小限に済ませれば非常に開発工数が短縮できる。
  • 26. APPROACHES 例えばこんな人は? お客さんの要望に極力応えたい UIが先に決まってぴったしのテーマが 見つからない ゼロから作らないと気がすまない!
  • 27.   欲しいテーマが見つからないなら 自分でつくっちゃえ! APPROACHES 何も無い状態からコードを記述していくこと スクラッチ
  • 28. スクラッチ APPROACHES 管理パネルでいろいろ設定したり、投稿できるよね
  • 29. スクラッチ APPROACHES テーマに反映できる?
  • 30. スクラッチ APPROACHES どうやって反映していいかわからない! 何をしていいかわからない! テーマ作成のガイドラインがある! http://wpdocs.sourceforge.jp/Theme_Review
  • 31. スクラッチ APPROACHES  本体機能の組み込む テンプレートタグ 例えば機能の組み込み
  • 32. スクラッチ APPROACHES ガイドラインは公式ディレクトリに 公開するためのテーマ作成用 無理に全部適応する必要はないが、 信頼・安定したテーマ作成の参考になる
  • 33. スクラッチ APPROACHES ガイドラインに従って1つ1つ確認していくと時間がかかる。 だからといってチェックしないで、 お客さんからのクレームで修正すると信頼を落とす。 そこで Theme-Check プラグイン
  • 34. スクラッチ APPROACHES 【Theme-Check】  ガイドラインに従ってチェックしてくれる。  (必須・警告・推奨・情報など)
  • 35. スクラッチ APPROACHES Theme-Check プラグイン 効率よくテーマを開発できる! Theme-Checkはあくまでチェックなのでガイドラインに従った組み込みは勉強必要
  • 36. APPROACHES スクラッチ 何も無い状態からコードを記述していくこと 長所 細かいところまで制御できる。 顧客の要望に応えやすい。
  • 37. APPROACHES スクラッチ 何も無い状態からコードを記述していくこと 短所 時間がかかる。 テーマ作成に知識が必要。   ※テンプレート階層、プラグイン API フックなど HTML、CSSやJavascriptの知識も必要。
  • 38. APPROACHES スクラッチ アレンジしやすさ ス 子 開発工数 ゼロから作くるから好きなように。。でも時間かかるよ
  • 39. APPROACHES テーマ作成のアプローチ アレンジしやすさ ス テーマが完成しすぎて 開発に時間がかかり お客さんの要望が多い すぎる。素人には難しい。 と使いにくい。 子 子 子テーマ ス スクラッチ 開発工数
  • 40. APPROACHES テーマ作成のアプローチ アレンジしやすさ ス ここの段階が あれば便利だな! ? 子 子 子テーマ ス スクラッチ 開発工数
  • 41. APPROACHES テーマ作成のアプローチ アレンジしやすさ ス テーマフレームワーク フ 子 子 子テーマ ス スクラッチ 開発工数
  • 42. テーマフレームワーク APPROACHES "Theme Framework" という言葉は                現在2つの意味を持つ http://codex.wordpress.org/Theme_Frameworks
  • 43. テーマフレームワーク APPROACHES "Theme Framework" という言葉は                現在2つの意味を持つ 1 テーマの開発を助長するのに使われる          "ドロップイン"コードライブラリ 2 他のテーマにフォークされる、または親テーマテン プレートとして使われるようなスタンドアローンの base/starterテーマ http://codex.wordpress.org/Theme_Frameworks
  • 44. テーマフレームワーク APPROACHES A "drop-in" code library framework スタンドアローンテーマではない。 functions.phpファイルに組み込むことによって テーマをブートストラップする。 日本語ドキュメントがほとんどない。 有料が多い。 こんなのがあるんだと頭の片隅にでも
  • 45. テーマフレームワーク APPROACHES Base/Starter Theme スタンドアローンテーマではある。 テーマ開発をすばやく・柔軟にできる土台として設計。 一般に親テーマになるように提供される。子テーマ機能 を使ってテーマ開発を行う。 最近よく耳にするスターターテーマはこれのこと
  • 46. Base/Starter Theme APPROACHES スタンドアローンテーマ (一般のテーマ) Base/Starter Theme   親テーマに   スタンドアローン なれるよ テーマだよ 技術的にスタンドアローンテーマなら子テーマに対する親テーマとして使える。何が違うの?
  • 47. Base/Starter Theme APPROACHES スタンドアローンテーマ (一般のテーマ) Base/Starter Theme 親テーマになること、フォークされことに特化!
  • 48. Base/Starter Theme APPROACHES スタンドアローンテーマ (一般のテーマ) Base/Starter Theme 【特化】 現状のまま使うこともできるが、サイトデザインを仕上げるようなCSSスタイルや他の要素が欠けてい ることがある。なぜならそのような要素は子テーマやフォークされる/派生テーマで加えられることを意 図されている。
  • 49. APPROACHES Base/Starter Theme アレンジしやすさ ゼロでもなく完成もしていないテーマ。 ス ガイドラインに沿ってある程度枠組み作って あげるからデザインは仕上げてください。 フ 子 子 子テーマ ス スクラッチ フ テーマフレームワーク 開発工数
  • 50. Base/Starter Theme APPROACHES 現状のまま使うこともできるが、サイトデザインを仕上げるようなCSSスタイルや他の要素が欠けてい ることがある。なぜならそのような要素は子テーマやフォークされる/派生テーマで加えられることを意 図されている。 Underscores: Automattic社が開発したスターターテーマ
  • 51. Base/Starter Theme APPROACHES ジェネレータを使って新規テーマを作成できる
  • 52. Base/Starter Theme APPROACHES _s を Theme-Checkでチェックしてみた。WARNINGが1つあり。
  • 53. Base/Starter Theme APPROACHES style.css headerから取り除く WARNING: Found wrong tag, remove from your style.css header. 
  • 54. Base/Starter Theme APPROACHES テストに合格! ガイドラインに沿ったベーステーマとなる。 
  • 55. Base/Starter Theme APPROACHES _s をそのまま表示。デザイン装飾が全くない。     サイトデザインはフォークまたは子テーマで仕上げる。
  • 56. APPROACHES まとめ アレンジしやすさ [base/starter テーマ] ガイドラインを満たした基礎テーマと なるので工数短縮。デザインをフォーク または子テーマで仕上げる前提なので ス アレンジしやすい。 長所:顧客要望に応えすい。 長所:親テーマに大きく依存する。 フ 短所:開発に時間がかかる。 短所:開発工数が短縮できる。    初心者には難しい。 子 子 子テーマ ス スクラッチ フ テーマフレームワーク 開発工数
  • 57. APPROACHES 所感 初心者の方は余計な装飾がなくソースがみやすいスターターテーマ で勉強すればわかりやすいと思います。ガイドラインに沿った最低 限の組み方が学べます。 WordPressを使った案件が多いなら、業種にあったオリジナルのスタータ テーマを作るのもいいかも。お客さんごとのアレンジは子テーマですると開 発効率も上がります。 WordPressのテーマアプローチは、予算・工数・要望などにより最適なもは 違います。アプローチの選択肢に、テーマフレームワーク(スタータテー マ・機能拡張ライブラリなど)もあることを覚えておきましょう!