WordPress Theme Raindrops 1.319-1.332
Raindrops1.319 では、WordPress4.3向けの修正、従来のPHP4形式のコンストラクタの記述を改めて、PHP5のコンストラクタの記述に改め、
1.332迄の9回のアップデートは、主にアクセシビリティへの対応
トグルアクションクラスで、キーボードアクセシビリティへの対応、
トグルアクションクラスというのは、
<ul> <li class="raindrops-toggle raindrops-toggle-title">カスタマイザーを構成するファイル群</li> <li class="raindrops-toggle"> テーマカスタマイザーは、-wp-includes/class-wp-customize-control.php -wp-includes/class-wp-customize-setting.php -wp-includes/class-wp-customize-section.php -wp-includes/class-wp-customize-widgets.php -wp-includes/class-wp-customize-manager.php からなるPHP API -wp-includes/js/customize-base.js -wp-includes/js/customize-loader.js -wp-includes/js/customize-models.js -wp-includes/js/customize-preview.js -wp-includes/js/customize-preview-widgets.js -wp-includes/js/customize-views.js からなるjavascript API を持っています。</li> </ul>
.raindrops-toggle .raindrops-toggle-titleを組み合わせたリストを記述すると、トグル表示できるという機能なのですが、今までタブ移動でタイトルにフォーカスした時に、本文が開きませんでしたが、タブ移動で本文を開くように、機能を改善しました
タブインデックスでのキーボードアクセシビリティの対応を行った。
<div class="raindrops-tab"> <ul class="raindrops-tab-list clearfix" role="tablist"> <li class="dummy">Tab Area</li> </ul> <div class="raindrops-tab-content clearfix "> <div class="raindrops-tab-page" role="tabpanel"> <h3>日本語</h3> <p>試験</p> </div> <div class="raindrops-tab-page" role="tabpanel"> <h3>英語</h3> <p>test</p> </div> </div> </div>
上記のような構造のhtmlを記述すると、自動的にタブ表示が出来る機能ですが、これをタブ移動で、自動的に本文を開くことが出来るように、機能を改善したりしていました。
また、スティッキーウィジェットエリアでの、メニューウィジェット等がドロップダウンで表示できるように変更したり、U detail kbd 要素など おそらくめったに使わないような部分でのスタイルの適用だとか、
きわめて地味な変更を積み上げてきました。
このような地味で、おそらくほとんどのユーザーが気づくことがないような変更は、メンテナンスのモチベーションを維持しにくくて、苦労していました。
ふつふつと湧いてくるのは、「もう、そんなひどいエラーや使いにくさは十分消えているんじゃないの」といった、まるでテーマが完成されつつあるような おごり との闘いでもありました。
「ユニットテストは、これまでに何千回もチェックしているし、簡単にバグが見つけられないくなっている。」いくら凝視しても、変更すべき点を見つけられない。
でも、気づいた。自分が作っているテーマなので、見慣れてしまっているし、デフォルトテーマ等の機能と同じぐらいのレベルでみているから、改良点を見つけられない。
WordPressというところから、一歩外れて HTMLとしてみていくと、なんでこの要素は、スタイルが作りこまれていないのか?等と、いくつも出てくる。
しかし、手が動かない。
「無駄な事をやっているじゃないのか」という気分に包まれる。
こういうことを積み上げないと、本当にやるべき事を発見する事は出来ない。と自分に言い聞かせながら この9回のアップデートを行ってきた。
もうすぐ、1.333にアップデートするつもりだ。
1.333では、簡易表示機能の改善と、body_class に edge用のブラウザクラスと、ie11用のクラスを追加します。
簡易表示機能というのは、
functions.phpの先頭に 以下のように変数を記述すると
$raindrops_fallback_human_interface_show = true;
という見え方で表示できる機能です。
Raindropsで、表示する事が困難なブラウザや、利用者がのぞむ場合などに、Raindropsの標準的な表示を変更し、最小限のCSSで表示します。
Raindropsというテーマが、積み上げてきた 表示に関するあれこれを、すべてチャラにして表示する機能も、何年も前から必要な機能だと考えて模索してきた、誰も気づくことがないだろうと思われる機能です。