WordPress Theme Raindrops 最近の取り組み
昨日、Raindrops1.201をリリースしました。
最近の更新について、詳細な説明を行っておらず、
テーマレギュレーションの変更に絡んだもの。
テーマのガイドラインは、結構頻繁に変更されていて 例えば、3.9のガイドラインの変更では、「やっぱ、ソーシャルリンクは、wp_nav_menu()を使って作ったほうがいい、とリコメンドしようぜ」とか、
だってさぁ、テーマ制作者が、思い思いに、ソーシャルリンク用のウィジェットとかテーマに突っ込んでるけど、ユーザーからしたら、テーマを変更したら、また入力しなおさなくちゃいけない。
そういう面倒くささを、ユーザーに強いなくてもいいじゃないか
みたいな感じで、、、
out-of-the-box
WordPress3.9でレビューガイドラインの変更が予定されていますが、その中にout-of-the-boxのサポートを必須条件にするということが検討されています。
out-of-the-boxとは、なんぞや
テーマをインストールしただけでは、WordPressにテーマ特有の設定などをデータベースに保存しない。
ユーザーがオプション設定を行った場合に、データベースへのデータの設定を行うというものです。
インストールしただけではコアに変更を加えないので、より安心して使っていただけると思います。
Raindropsでは、テーマオプションパネルに、データベースへのデータを保存していない状態と、保存した場合に、どのテーブルに保存したのかを、明示する設定に変更しました。
Arbitrary Header/Footer Scripts
WordPress3.9のテーマガイドラインで、テーマの機能で任意のスクリプトをヘッダーやフッターに挿入可能な機能は認めないという議論が進行しています
Raindropsテーマでは、投稿の編集画面で、カスタムフィールド javascriptを作成すると、値に設定されたjavascriptコードを、シングルページのヘッダーに自動挿入するという機能がありましたが、この機能を停止しました。
これまでこの機能を使っている人で、今後も使いたい場合は、functions.phpの
define( 'RAINDROPS_CUSTOM_FIELD_SCRIPT' , false );
をtrueに変更していただけると、従来どおり利用することができます。
同様に、カスタムフィールドを使って、フィールド名cssを指定して、カスタムCSSを入力できる機能は、従来どおり利用することができます。
また、カスタムフィールド フィールド名metaを使って、従来はメタタグやスクリプトブロックを自由に入力することができましたが、一定の制限を加えるようにしました。
<base><link><meta>
上記の要素に限って、使うことができます。
カスタムフィールドmetaは、どんなことをするため準備しているか、簡単にメモに残します。
例えば、投稿に、OGP(Open Graph Protocol)をハンドメイドで追加したい場合
metaというカスタムフィールドを作成し、値を
<meta property="og:title" content="test"> <meta property="og:type" content="article"> <meta property="og:description" content="test"> <meta property="og:url" content="test"> <meta property="og:image" content="test"> <meta property="og:site_name" content="test"> <meta property="og:email" content="test@test.com">
のようにしていただくと、シングルページで表示したときに、OGPがhead内に挿入されます。
また、よく画像などを投稿本文には、相対リンクで書きたいという場合は、値にベース要素を使うことができるようにしてあります。
(サーバーの引越し用の用途には、作っていませんので留意してください)
metaの値に
<base href="http://www.example.com/images/" target="_blank">
などと設定していただくと
投稿本文に
<img src="example.jpg" alt="example" />
としていただくと、example.jpgは、http://www.example.com/images/example.jpg として表示されるようになります。
ただ、2点ほど、注意が必要です( 未完成な部分があります )。
1. 1.201では、シングルページでは、そのように表示できますが、ループページで問題が出ます。
次期バージョンでは、フィルタを使って、ループ表示の時には、URL置換を行うようになる見通しですので、ループページ、シングルページ共に表示ができるようになると考えています。(もうちょっと待っててください)
2.WordPressでは、URLに絶対URLを使うのが標準ですが、何らかの事情または、相対リンク用の関数を使ったURLが存在する場合、置換がうまくいかないことがありますので、個々の環境で、利用するかどうかは検討してください。
Raindrops独自の取り組み
大雑把に言うと、「プレゼンテーションの詳細化(?)」という取り組みを行っています。
投稿は、通常は一定のレイアウト、一定のデザインで表示されますが この部分を、投稿ごとに自在にCSSの指定を変更したりすることができるような機能を与えていくという取り組みです。
例えば、明るいデザインのテーマを利用していて、悲しいことに関するエントリーを書いたとします。
たぶんそれは、明るいデザインにそぐわないということは 良くあることではないかと思っていて、
投稿単位で、タイトルやposted on posted inを非表示にするようなスタイルを記述できたり、投稿の背景などを、カスタムフィールドcssにスタイルルールを記述することで、自由に変更できるようにするものです。
カスタムフィールドcssは、その投稿に限定したカスタムスタイルを記述することができます(サイトタイトルの文字色変更などは、できませんので、そのような場合は、style.cssに記述する必要があります)
書き方についてはこのあたりに記述されたコードを参考にしてください。
カスタムフィールドには、以下のような特殊な書き方もできます
{ background:red; }
( {の前に半角スペース付けてください )
上記のような記述は、article全体の背景を変更することができます。
投稿のデザインだけ変更できても、ページ全体の印象は同じじゃないかという場合もありますよね
その場合は、そのページだけに対応するカスタムデザイン表示をすることもできます。
例えば、カラータイプ darkを利用していて、全体が黒じゃまずいというときには、
<!--[raindrops color_type="minimal" col="3"]-->
を本文に記述するとminimalカラータイプの3カラムで表示できます。
このカラータイプは、自分自身で独自のものを作ることもできるようになっていますので、ページ、投稿ごとのカスタムデザインにお役立てください。
Note:カスタムフィールドをつかったcssなどの機能は、エディタ権限を持っていないと利用できません。