Snow Monkeyを触ってみた話、あるいは受託でウェブ制作をする者が、高機能の汎用テーマとどう向き合うかという、答えの出ていない悩ましい話

2017年12月20日

この記事はSnow Monkey Advent Calendar 2017の 18日目として書きました。 遅れてすみませんすみません。。。

既に【100%GPL 有料WordPressテーマ Snow Monkey】を購入して、ユーザーグループにも入れてもらったのですが、本業があわあわしておりまして全く触れていないまま、担当日を迎えてしまいましたすみませんすみません。。。

高機能100%GPLテーマ群雄割拠時代?

さて、先週末に名古屋ではこのような勉強会がありまして、私も参加してきました。

【WordBench Nagoya 12月度】WordPress 初心者が Lightning のカスタマイザーでサイトを作ってみた

Lightning ってのはベクトルの石川さんが公開して、公式ディレクトリにも登録されているWordPressテーマでして、中のソースなどはかなり違えど、カスタマイザーやウィジェットを使ってレイアウトを実現していくという面では共通点があるなあと感じました。

※注:公式ディレクトリ掲載テーマは「プラグインテリトリー」の決まりがあるので、Lightningの場合は、機能面の多くをテーマ有効時に一括DLできる推奨プラグイン「VK All in One Expansion Unit」で実現しています

LightningはBootstrapベースの国産テーマです。
おや、Bootstrapベースの国産テーマといえば、思い当たるものがありますね。
そう、キタジマさん作の “habakiri” です。

私は2016年の頭頃からこれまで、habakiriの子テーマで受託制作のサイトをいくつか(6〜7くらい)作って納めました。ほんとお世話になってます。

当時、使い慣れたBootstrapベースでやりたくて、habakiriとLightningのどちらをベースにしようか迷い、両方をテストした結果habakiriを選びました。
LightningはGUIでの設定項目が多くて、habakiriの方が(カスタマイザーを搭載しつつも)コードベースでの拡張がしやすかった、というのが理由です。フックもたくさん仕込んでくれてますし。

私がベースとするテーマに求めることは

  • そこそこシンプルだけど、フォントサイズとか見出しスタイルはどはきっちり作り込まれている
  • デザイナーがデザインを乗せやすい(完成形をイメージしやすい)
  • スライダーとかスマートフォン時のドロワーメニューとか、毎回使うけど自分で実装するのは面倒な定番機能が付いている
  • その定番機能の見た目や動きが自分(もしくはクライアント)の好みかどうか

に集約されるんですよね。
ここを100%全部満たしているテーマってなかなかないんですが、その中でhabakiriはかなりの高得点な印象でした。

受託制作ゆえの悩み

ただ、そんな拡張しやすいhabakiriでも、制作にあたってはいろいろ悩ましい部分がありまして…

ウェブを生業としている人間の場合、わざわざ管理画面にログインして、カスタマイザーを開いて初期設定をやっていくのは面倒な作業です。
特に悩ましかったのが

  • キーカラーの設定:カスタマイザーで指定head内にCSSが直接出力されるので、style.cssで上書きするには継承度の問題とかで、結構キツめの記述をしてやらないといけない
    (面倒になって結局カスタマイザーでやることにするも、テストサーバと本番サーバでの設定同期という別の面倒が出てくる)
  • アーカイブや固定ページテンプレートの設定を忘れて、意図しないサイドバーが出てたりする

という点でした。

クライアントさんが自分で触ることがない箇所ほどGit管理したいし、GUIでの操作が面倒なので、結局子テーマでテンプレ作って上書きしちゃうんですよねー。
でもそれによって、せっかくの機能をつぶしてしまうことにもなるので、利用側として大変申し訳なく感じることもあり。。。

なら、_sとかスターターテーマを使えばいいじゃんという声も聞こえてきそうですが、見出しデザインとかスタイリングは自分でやらないといけないですし、私は自分でデザイン作成はしないので、デザイナーさんに「これベースでデザインして」って伝えるためにはスケルトンなテーマじゃなく、デモサイトが用意されてて、必要なスタイリングが一通り済んでいる完成体のテーマのほうが、結局スターターテーマとしても都合が良かったりするのも事実でありまして。
(あまりコーディングに明るくないデザイン会社さんとのお取引の場合は、CSSフレームワークの概念を理解していただくのも難しいのですよね。それよりデザインに注力していただきたいですし。)

子テーマで受託のサイト制作を進める場合には、どうしてもカスタマイザーとコードベースの切り分けが難しいのが悩みです。
また、コードを書かないかわりに、そのテーマ専用ウィジェットとか専用の設定項目についての学習コストは結局必要だよなあというのも感じます。WordPressの標準機能ではない部分の、機能名などの用語も作者によってまちまちですし。

ベースにしたテーマが高機能であればあるほど、そういったテーマを活かして受託制作を効果的にこなすスキルが求められるなぁと感じます。

と、ここまで既存テーマを使って受託制作を行う場合の悩みをとりとめもなく綴りました。


で、ここでようやくSnow Monkey の話です。

まだローカル環境でちょっと触った程度なのですが、habakiriと比べて感じたことをざっと書きます。

Snow Monkey の子テーマのfunctions.phpは通常の書き方でOK

habakiriはfunctions.phpにPHPのclassが使われているので、書き方が違う

普段WordPressでしかPHPを使わなかったり、classに馴れていない初級PHPユーザーにはちと敷居が高かったのですが、Snow Monkeyは多分class未経験でも大丈夫(だと思う)

Bootstrapベースではない

自分でコードを書いてテンプレートを増やす場合、キタジマさん開発のCSSフレームワーク、Basisのclassなどを使って組んでいく必要がある

ビジュアルエディタ用のコンポーネントがすごい!

Gutenbergにどう対応するのかはハラハラドキドキしますが、ここで吐き出されるHTMLを見れば、Basisの書き方の参考にもなりそうです。

スライダーはSlickなのでここはhabakiriと同じ

…のだけど、Snow Monkeyのスライダーの方が使いやすく感じたのはなぜだろう
(habakiriは文字を載せるように作られてて、Snow Monkeyは画像を見せるように作られているからかな?)

Font Awesome 同梱してくれてるので便利!

ただしstyle.min.cssにまとまっているので、プラグインでもFont Awesomeを出力するようなものがないか注意。

その他

  • ドロワーメニューの見た目がhabakiriより好みかも
  • SNSボタンいい感じ
  • プロフィール表示ほしいって言われること、最近けっこうあるので便利(某100%GPLじゃないテーマの影響を強く感じる)

・・・などなど。

カスタマイザー・ウィジェットが優秀なSnow Monkeyですので、最初の方で徒然なるまま書いた、コードベースでデザイン管理しづらい問題はやはりあります。
habakiriもSnow Monkeyも.scssファイルが同梱されているので、それを使ってビルドして子テーマで全部読み込むようにしたほうがいいのかな?このあたりはまだ試行錯誤が必要そう。

「メディア/ブログ向け」を謳っているテーマなので、コーポレートサイトとして使うには少し過不足な部分もあるんですが、それでもぜひ一度実案件で使ってみたいと思っています。

なによりすごいのは、タイポグラフィなどがとにかくとことん調整されていて、気持ちが良いです。
「このテーマを使ってサイト作ってみたい!」と思わせるのがスゴイ。

受託制作でSnow Monkeyのポテンシャルをどの程度発揮できるかは未知数ですが、とにかく使ってみたい欲望にかられているので、繁忙期を過ぎたら何かやろうかなと思ってます。あと開発の応援はしていきますね!

ということで、・・・今回はこんな感じの駄文で勘弁してください^^;