emulsion Theme は変な奴

一般的に、block theme ( full site editiong theme ) は、主にコアのCSSをうまく使って最小限度のCSSで構成されています。

最新のデフォルトテーマTwenty Thirteenでは、customizerも、functions.phpも使用しませんし、style.css を読み込むこともしません。

今までの常識は覆されたといってもいいのではないかと思います。

私自身は、特にWordPressのコミュニティーに深くかかわっているわけでもないので、WordPressの未来について知る由もないわけですが、

個人的には、ワードプレスのテーマ依存の問題を解決するプロジェクトのように見ています。ワードプレスのテーマ依存とは、「ワードプレスは、何らかのテーマファイルがないと機能しない。」という意味です。

おそらく将来的には、テーマは、プラグインのような位置づけとなると、予想しています。

おそらく、均一で同じような見た目のサイトが嫌いだとか、それじゃ伝わらないとか、需要や主張がなくなるわけないと思うので、デザインやレイアウトをコントロールする機能が全くなくなるという事はないんじゃないかと楽観的です。

HTMLやCSSの知識がない人でも、それなりに。それなりの知識を持った人たちは、さらに素晴らしいWEBサイトの構築ができるようになるのだろうと思っています。

emulsion テーマは、なにを考えているの?

emulsion テーマは、最小限度のCSSで構成されているわけではなく、最低でも数千行のCSSを使用しています。

WordPress.orgにホスティングされているブロックテーマのほとんどは、コアのCSSをうまく使って最小限のCSSで構成されるため、コアのCSSのバグはほとんどのテーマで同様の不具合を生じさせます。その逆に素晴らしい部分も、CSSなしで自動的に反映します。

このような特性は、ホスティングブロックテーマの、推奨された「あるべき姿」のようです。

そのような中で、なぜemulsionは、大量のCSSを追加し続けているのか

ブロックテーマは、クラッシックテーマとの互換性を考慮しない全く新しい機能を追求し続けているのに対し、emulsion テーマは、クラッシックテーマとブロックテーマの間の道のりに注目しているという立場の違いにあります。

CSSは、簡単に書ける割には破綻しやすい設定です。書けば書くほど、つじつまが合わなくなったり、矛盾が生じるので、ちょっと恥ずかしさも伴いますが、気にしないようにしています。

これまで、テーマでやってきたこと。

PHPテンプレートと、テーマのCSSでクラッシックテーマとして動作する機能

PHPテンプレートの中に、HTMLテンプレートを埋め込んで動作する機能

HTMLテンプレートを使用したフルサイトテーマ機能

いわゆるユニバーサルテーマといわれるタイプのテーマですが、どこにも見本もありませんし、ただ数年間壊れ果てることなく動作し続けているということが取り柄のテーマです。

もともとは、フルサイトエディタのプロジェクトの変化を観察するために作成したテーマだったのですが、現在では、必要な場所でPHPテンプレートを使用したり、クラッシックテーマで、HTMLテンプレートのヘッダーやフッターに切り替える機能など、別々の機能を融合させることも出来つつあります。

必要な時と場所で、PHPテンプレートでしかできない機能はPHPで、そうでない部分は、シンプルなHTMLテンプレートで、ブロックテーマと、クラッシックテーマ等と名前を使い分ける時代は、いつか終わり、相互に良いところを使い分け可能なスタイルになっているだろうと、emulsion (乳化)という名前に希望を託しています。

おまけ

HTMLもCSSも知らないユーザーにフレンドリーなWordPressなら、HTMLやCSSをちょっと知っているユーザーにもフレンドリーであってほしい。と思っている

では、クイズを一問

幅、800pxのブロックをカスタムHTMLブロックで作成してみましょう。

hello world

<div style="width:800px;border:1px solid;"><p>hello world</p></div>

800px 幅のブロックができていると思いますが、一般的なブロックテーマではこのhtmlは、800pxで表示することはできないだろうと思います。仮にできたとしても、ブラウザ幅が800px以下になったら、オーバーフローしてしまいます。

(解決方法はもちろんあります。max-width:100% 追加すればいいだけなんだけど、widthという最も基本的なプロパティを指定すると、オーバーフローするっておかしいよね)

プロジェクトの人たちは、明日そのような問題を解決すると考えているでしょうが、テーマは、今動くべきだと考えています。