Snow Monkey v10.0.3 の概要
変更
wp_enqueue_scriptsフックでwp_enqueue_script()していない場合でも「jQuery 読み込み最適化」を良い感じに動くように調整- テーマディレクトリが書き込み不可の場合は「キャッシュを有効にする」が有効になっていても処理しないように変更
- 管理バーの「キャッシュを削除」は管理者のみ実行可能に変更
- パンくずのタイトルの表示をページ見出し(記事タイトル)の表示と同じになるように変更
不具合の修正
- グローバルナビゲーションのサブメニューの拡大したクリック範囲が他の項目に被る不具合を修正
- 管理バーの「キャッシュを削除」のアイコンが管理画面だとズレる不具合を修正
- スマホで横スクロールが発生する不具合を修正
wp_enqueue_scripts フックで wp_enqueue_script() していない場合でも「jQuery 読み込み最適化」を良い感じに動くように調整
普通 wp_enqueue_script() って wp_enqueue_scripts フックでやるじゃないですか…ですよね? どうも wp_enqueue_scripts より後に wp_enqueue_script() するプラグイン(○ooCommerce とか ○bPress とか)があって、これまでのバージョンだとそれらは考慮に入っておらず、意図せぬ不具合が発生することがあったのでwp_enqueue_scripts フックより後でwp_enqueue_script() した場合も考慮して処理を変更してみました。
これでもちゃんと wp_add_inline_script() せずに手動で <script>〜</script> とかしているやつはどうしようもないので、うまく動かない場合は機能を無効化してください…。
スマホで横スクロールが発生する不具合を修正
ヘッダーの .u-hidden は clip することで要素を消しているのですが、clip だけだと実際のサイズは小さくならないようだったので overflow: hidden も追加しました。.u-hidden は他の場所でも使っているので、アップデートしておかしくなった部分があれば教えてください!
余談:.u-hidden と .u-visible について
Snow Monkey は .u-hidden と .u-visible というユーティリティクラスを持っていて、サイズによる出し分けには結構このクラスを使っているのですが、プロパティを追加・上書きできても削除はできないという CSS の仕様の都合上、こういう相反する2つのクラスを使うというのは結構微妙だなーと思うことが増えてきました。
どこかのタイミングでこの2つのクラスは廃止して、u-none みたいな単純に display: none するだけのクラスをつくって、その組み合わせ(u-none-sm u-none-md としたらスマホとタブレットで消える的な)で表示/非表示のコントロールをするように変更したいなと考えています。
テンプレートの上書きをしていたり、.u-hidden や .u-visible のブレイクポイントを変更するために CSS を上書きしている方もいると思うので、廃止すると後方互換性的に厳しいなーという気持ちがあって、なかなか作業できずにいるのですが、このまま使用し続けるデメリットも大きいと感じるようになってきたので、メジャーアップデートのタイミングでどーんとやっちゃおうかなと思っています。カスタマイズしている方は影響が大きいかもしれませんが、何卒ご理解いただければと思います…。
