主に不具合修正その他 Luxeritas 1.52

不具合の修正と、カスタマイズ反映しないとかエラー出るとかに関する強化改善。

詳細は後述。

改修・改善内容

ディスクキャッシュ系ホスティング対策

IIS の WinCache や MixHost の LiteSpeed とかのメモリキャッシュ・ファイルキャッシュ系。
(LiteSpeed は、よく分からんが・・・)

Luxeritas は高速化のために、

カスタマイズした内容を「直接スタイルシートに反映させる」

という、他のテーマにはない特殊な動作をする。
この際、既存の style.css や luxe.js 以外に、style.min.css、luxe.min.js 等のファイルを新たに作成する。

これらの作成ファイルは、元となったファイルと同期させるために、タイムスタンプを元ファイルと同じになる処理を入れている。

が、元のファイルは更新されてないので、タイムスタンプは古いままになる。

なので、WinCache のようにタイムスタンプしか見てないメモリキャッシュやファイルキャッシュだと、カスタマイズが反映されない。

こういった、ディスクキャッシュに対応するため、双方のファイルを比較して、とりあえず新しい方のファイルに合わせてタイムスタンプ更新するようにした。

とりあえず WinCache の方はこれで OK。

LiteSpeed はテスト環境がないから分からんけど、たぶんいけんじゃね?

ファイルのパーミッションチェック

Luxeritas が動作しないパターンのほとんどは、

「権限がなくてファイルの作成・保存に失敗する」

というパターンがほとんど(chmod か chown すりゃ直るんだけどね)。

なので、管理画面で何のファイルの作成・保存に失敗したかを分かりやすく表示するようにした。

且つ、ブログ画面はデバッグモード true の時だけエラーメッセージを表示して、ブログそのものは、保存に失敗したファイル使わずに表示するようにした。

固定表示系のパーツ関連

スクロール追従領域とか、グローバルナビの固定とかに関するバグ修正。

特に、サイドバーに非同期系のブログパーツを置いた時に、スクロール追従領域などが、

↑ こんな風にフッターを突き抜けちゃうような現象回避とか、、、

その他、詳しくは改訂履歴参照。

改訂履歴

ディスクキャッシュ対策(IIS の WinCache や MixHost の LiteSpeed など)

  1. カスタマイズ反映時に構築されるファイルのタイムスタンプを更新するようにした

エラー時の切り分け強化

  1. Luxeritas のファイル保存処理で失敗した場合の処理を以下のように変更
    • 管理画面で何のファイルの保存に失敗したかを分かりやすく表示するようにした
    • ブログ画面はデバッグモード true の時だけエラーメッセージを表示するようにした
    • とりあえずブログ画面は表示できるようにした

バグ修正

  1. ヘッダーをコンテナの内側に設定してグローバルナビを固定すると、スクロール時にナビの幅が本来の幅より右側に少し広がってしまうバグの修正(1.50 でのレベルダウン)
  2. 以下の条件を満たしている場合にフッターの最後までスクロールできなくなるバグの修正
    • スクロール追従領域の縦サイズが画面の縦サイズよりも大きい
    • スクロール追従領域の一番上の部分がコンテンツの一番下よりも更に下にある
  3. サイドバーに非同期系のブログパーツを配置すると、スクロール追従領域がフッターまで突き抜けてしまうバグの修正
  4. 条件によってスマホ閲覧時にフッターまでスクロールした時にピョンピョンと画面が跳ねる?現象の回避(なんか良く分からん)

その他

  1. 内臓 Bootstrap を v3.3.7 に更新

Luxeritas

Posted by るな