Luxeritas 3.7.11 リリース(アップデート推奨)
Luxeritas Theme 3.7.11 をリリースしました。
主に ver3.6.0 ~ 3.7.10 の間で発生したレベルダウン修正が主になります。
改訂履歴
仕様変更
- 「管理機能 -> Luxeritas 固有機能」にある Luxeritas のブロック関連機能の無効化オプションを「Luxeritas Block Toolbar の OFF」と「Luxeritas Blocks の OFF」に分離
- PWA のマニフェストに scope も記述するようにした
- ヘッダー帯メニューに検索ボックスを設置した状態でのスマホによる閲覧時には、検索ボックス下にある帯メニューは設定値に関わらず高さ 48px 未満にしないようにした(理由:Lighthouse で新たに 48px 以上にしろと言う指摘が出てきたため)
- モバイル用検索ボタンを押した際に出てくる検索フォームの縦幅を少し広げた
- 管理画面内のごく一部(OGP タブのところ)、日本語訳を変更
- アイコンフォントの「font-display: swap」を「font-display: auto」に変更(代替テキストがないため)
- 「カスタマイズ -> Font Awesome」の CSS の設定で CSS 読み込み元のデフォルト値を CDN に変更
- ブロックエディタのコードエディター画面の幅を WordPress のデフォルトより max-width を 300px ほど広げた
不具合修正
- サムネイルの LazyLoad を有効化してると AMP でブログカードの画像が表示されない(正確には 1 x 1px の透明画像が表示されてる)不具合修正(ver3.7.6 でのレベルダウン)
- 親テーマと子テーマの CSS を結合、且つ FontAwesome を非同期に設定するしてると icomoon のフォントが親テーマにあるものと子テーマにあるものの両方が読み込まれしまっていた不具合修正(ver3.7.1 でのレベルダウン)
- カルーセルスライダーのサムネイル設定を 150 x 150px に設定していて、アイキャッチ画像の無い No Image の投稿がカルーセルに表示されてる場合、カルーセルで表示してる No Image 画像が 150px はなく1024px の画像になってしまう不具合修正
- トップページを固定ページに設定しており、且つ PWA のオフラインページをトップページに設定してる場合、PWA のオフラインページが設定した固定ページではなくランダムな投稿ページになっちゃうことがある不具合修正(ver3.7.5 の不具合修正に書かれている、スタートページの不具合と同等の不具合がオフラインページにも存在していたので、こちらも修正した)
- style.async.min.css が正確に preload されないことのある不具合修正(ver3.7.7 でのレベルダウン、保留してたものを再修正して復活させた)
- ブログカードを URL 直書きに設定してブロックエディタで URL 直書きでブログカード作ると、画面上には表示されない iframe(WordPress オリジナルのブログカードの残骸)が残ってしまってたので出力されないよう修正
- 上記と関連して、旧エディタで URL 直書きによるブログカードが AMP だと CSS が適用されなくなってた不具合修正(おそらくver3.6.0 でのレベルダウン)
その他
- 投稿本文の img タグに alt 属性が無かったら、空の alt 属性を補完してあげるようにしてみた(全く無いよりは空であっても alt 属性はあった方が良いことになってるので)
- FontAwesome を CDN から読み込む設定にしてる場合は use.fontawesome.com を dns-prefetch するようにした
ディスカッション
コメント一覧
るな様。
いつもルクセリタス使わせてもらっております。ありがとうございます。
以前、「function」の件でコメントさせていただいた者です。
その際は一人で混乱し、変なコメントしてしまい申し訳ありません。
今回、どうしても困っていることがあります。
サイトアイコンが「スマホの検索画面」のみ出なくなってしまったのです。
ルクセリタスを使いだし、カスタマイズでサイトアイコンを設定し、
ずっと全てのデバイスでサイトアイコンは出ていました。
しかし、ここ1か月くらい、
急にスマホの検索画面のサイトアイコンが地球儀マークになってしまっております。
パソコンには出ています。
スマホのお気に入りに入れたりした時のアプリアイコン?は出ております。
スマホの検索画面のみ地球儀なのです。
他の人のスマホ数台で確認しても同様でしたので、
対策を調べて、キャッシュをクリアしたり、再度設定し直したりしましたが改善されません。
親テーマは3.7.11。
子テーマは3.0.2です。
AMPしています。
ルクセリタスと関係のない所に原因があるのかも知れません。
場違いな質問かも知れませんが、どうにもならずコメントさせてもらいました。
アドバイスあれば、よろしくお願いします。
NK さん。
サイトアイコンは Luxeritas ではなく、WordPress の標準機能であり、なおかつ質問の内容としては正直言って WordPress とも関係のない質問なんですけどね。
一応、回答すると、検索画面のアイコンっていうのは、Google 先生がクロールした際に Google のサーバーにキャッシュされたものです。
つまり、ここ一ヶ月くらいの間に Google 先生がクロールした際、偶然何かしらの理由で Google 先生のモバイル用クローラーがうまくアイコンを読み取れなかったってことです。
どこのどんなサイトでも同様の現象は発生します。
どーしても表示させたいなら、Google 先生にクロールの再リクエストをして数日~数ヶ月待つとかすればいいんじゃないですかね。
るな様。
ご回答いただき、本当にありがとうございます!
見当違いな質問、本当にご迷惑おかけしました。
サイトアイコンについてはしばらく様子をみます!
これからもルクセリタスを使わせていただきます!
今回はありがとうございました。
こんにちは。普通にインストールしたのですが、パソコンで見ても、サイドバーが画面の下に回り込んでしまい困っています。どうしたらパソコン画面でサイドバーが横に表示されるのでしょうか?
最初、3.7.2.2をインストールしていましたが、このような状態で、先ほど、3.7.8にアップグレードしたのですが、状況が変わりません。さらに、3.7.11.2にアップデートしましたが、同じです。
キャッシュ・プラグインのキャッシュの削除、キャッシュ・プラグインの無効化はどちらも試しました。現在、キャッシュ・プラグインは無効化中です。
お手数をおかけしますが、よろしくお願いいたします。
JNP さん。
サイドバーではなくウィジェットが全部「フッター左」に入ってます。
ありがとうございます!まるで気がつきませんでした。無事直すことができました。
はじめまして。
スピードへの魅力とamp化操作性の良さに惹かれLuxeritasを使わせて頂いている者です。
使い慣れたら全てのサイトの移行を考えています。
今回のアップデートとは直接関係ないかもしれませんが、可能であればご教示ください。
先日Googlesearchconsoleより
「amp-ad」で必要なタグ「amp-ad extension .js script」がないか、正しくありません。これはまもなくエラーとなります。初検出日: 2020/02/15 ステータス: 警告
という警告を貰いました。
ページについては、
https://ドメイン.jp/gunmas-house-information/amp/
https://ドメイン.jp/sitemap/amp/
の2ページになります。
色々自分なりに調べ試しましたどこに問題があるのかもわからないお手上げ状態です。
アドセンスのampスクリプトも[Luxeritas]→[アクセス解析]に貼ってありますがここが原因なのかは不明です。(貼り忘れに気が付き後から時間差で貼りました。)
可能であればご教示ください。
よろしくお願いします。
家ナビぐんま管理人さん。
見る限り、AMP のアドセンスウィジェット内に通常の <script> から始まるアドセンスではなく、自力で <amp-ad> を書いてる感じですか?
原因は最初の <amp-ad の直後に改行が入ってるからですね。
現バージョンでは、<amp-ad の直後はスペースじゃないと認識しないです。
次のバージョンで、改行でも認識できるようにしときます。
> アドセンスのampスクリプトも[Luxeritas]→[アクセス解析]に貼ってありますが
こんなものは全く必要ありません。
「アクセス解析」は Google Analtycs やその他アクセス解析用のスクリプトを貼るもので、広告関連のスクリプト類を貼るような場所ではないです。
むしろ、通常のページの方で無意味な AMP 用広告スクリプトを呼び出してるので無駄なリクエストだけが増えてます。
るな 様
貴重なお時間で対応頂きありがとうございます。
>見る限り、AMP のアドセンスウィジェット内に通常の から始まるアドセンスではなく、自力で を書いてる感じですか?
アドセンスのamp用の広告コードをそのままコピペしていました。
もしかして、AMP のアドセンスウィジェット内に通常の から始まるアドセンスコードを貼ってよかったのでしょうか?
一応、通常コードを貼り、アドセンスのampスクリプトも削除してみました。
今まではGooglesearchconsoleに検証すら受け付けてもらえなかったものが、受け付けてもらうことができましたので解決に向けて前進できているようですので検証結果を待とうと思います。
るな様の素早い回答と適切なアドバイス本当に感謝しています。
ありがとうございます!
家ナビぐんま管理人さん。
> もしかして、AMP のアドセンスウィジェット内に通常の
通常コード、AMP 用コードどっちでもいけます。
AMP 用コードを貼る場合は、先の返信にも書いたとおり、現行バージョンでは、最初の amp-ad の直後は改行ではダメです。
るな 様
>通常コード、AMP 用コードどっちでもいけます。
すごい。
そうなのですね。
ありがとうございます。
>最初の amp-ad の直後は改行ではダメです。
わかりました。
るな様とLuxeritasの凄さに感銘!!
対応ありがとうございました!
るな様、ご返信遅くなりました。v3.7.11拝見いたしました。るな様の仕事の速さに驚いております。さすが光速と書いてLuxeritas・・!誠にありがとうございます!
そして、別件でバグ?を発見しました。(特に修正は希望しておりませんが、単なるご報告です)
とある記事の本文が表示されない現象に遭遇しまして、原因を探っていたらwpfunc.phpのpreg_replaceがPREG_JIT_STACKLIMIT_ERRORを吐いておりました。
■経緯
・あれ?記事本文が出ないぞ?
→the_contentはあるけどthk_contentがNULLになってるな
→wpfunc.phpで発生してるらしい
→1042行目のこれや!
$contents = preg_replace( “/(/ism”, ‘${1} alt=”” />’, $contents );
→1043行目でecho preg_last_error();したらPREG_JIT_STACKLIMIT_ERROR・・!( ゚д゚)ポカーン
→ってかこの行ってv3.7.11で追加された記述やん( ゚д゚)←いまここ
■私の考える原因
・preg_replaceは、エラーが発生するとNULLを返すクソ仕様
・正規表現の(?:(?!alt=).)+?)あたりがPREG_JIT_STACKLIMIT_ERRORを引き起こしそう?
・そもそもimgにaltを付与しないプラグインも悪い(私の場合はRin○erでした)
まとめ:長い記事にaltなしimgタグがあったら( ゚д゚)オワタ?
■ちなみに私の環境
・KUSANAGI on ConoHa v8.4.5-3
・PHP 7.3.14
・WordPressとLuxeritasともに最新
間違っているかもしれませんが、以上ご報告まで。
んにゃんにゃさん。
うーん。長~い記事で、且つマッチする(つまり alt が無い)文字列の数がいぱ~いある場合は制限超えてそうなるかもしれない。
実際に JIT_STACKLIMIT_ERROR になった記事見せてもらえると嬉しいっす。
追記。
とりあえずですね。jit が on の環境で、alt の無い img タグ 20個と5000文字くらいの記事で試したけど発生しなかったから分からんのやけど、
↑ これを
↓ こーしてみたんだが、どうだろう?
追記の点はまだ確認できておりませんのですが、ひとまずこちらから。
まっさらなサーバー立ち上げて、WP&Luxeritas&子テーマ&R○nkerプラグインの新規インストール、高速化設定(極限)のみ行ったのみの状況で、記事消失を再現できました。
https://test.auto-ts.net/
※変な分野の記事で恐縮です
ちなみに、投稿コンテンツの Lazy Load 有効化をOFFにすることで記事が消えなくなることと、
画像ではなくpタグ内の文章をすこし削除するだけで記事が消えなくなることも確認しました。
んにゃんにゃさん。
ありがとうございます。書いてあったソースで再現し申した。
且つ、さっき追記したコードなら OK なことも確認できますた。
否定先読みするよりも preg_match_all で1個1個確認した方がいいみたいですなぁ。
次のバージョンで反映しときます。
るな様
遅くなりました、修正後のコード確認いたしました!当方でもきちんと動きました。
ちなみに、もともとの1042行目のパターンをこのようにしても動きました。
‘/(<img (?:(?!alt=).)+?)\/?>/ism’
↑ \/に?を補ってあげた。当初のパターンでは?がなかったためにJIT_STACKLIMIT_ERRORになったのではと推測
‘/(<img(?!.*alt=).*?)>/ism’
↑「alt=を含まない」というのをオーソドックスなやり方で書き換えてみた
アップデート期待しております。いつもありがとうございます!
んにゃんにゃさん。
2日前にすでに 3.7.11.1 としてアップデートされてます(今は 3.7.11.2 も出てます)。
正規表現は、1つ目のやつは OK ですね。
2つ目に書かれてるのは、当方で一番最初にやったやつですが、マッチしないパターン(というか、むしろ記事内容によっては事故が起きる状態)が出てきちゃったので却下したパターンです(全ての人が正しい HTML を書くとは限らないってこと)w
でも、否定先読みより preg_match_all 一括取得で str_replace との組み合わせで一個一個置換した方が軽い上に、img タグだけを確実に置換できる分、安全ですね。
>2日前にすでに 3.7.11.1 としてアップデートされてます(今は 3.7.11.2 も出てます)。
→失礼しました!ブログに投稿がなかったもので気づきませんでした。
>否定先読みより preg_match_all 一括取得で str_replace との組み合わせで一個一個置換した方が軽い上に、img タグだけを確実に置換できる分、安全ですね。
→そうだったんですね。てっきり一括でpreg_replaceした方が高速かと思いました。
ありがとうございます
んにゃんにゃさん。
> ブログに投稿がなかったもので気づきませんでした。
いや、て言うかごめん。
多勢に影響のなさそうなリビジョンのリビジョンは、たまに、こそーりアップロードしてることあります。
あまりにも小さすぎる修正だと、リリース情報を書いてる時間がもったいないのでござる(そもそも面倒くさい・・・)。
ソース内のコメントを書き換えただけとか、条件同じで if と else の位置替えただけとかいうパターンもあるし・・・
何度も何度も失礼します(;;)
3.7.11.2のload-header.phpの50行目、async.min.cssのプリロードをする箇所に
if( file_exists( TPATH . DSEP . ‘style.async.min.css’ ) === true && filesize( TPATH . DSEP . ‘style.async.min.css’ ) <= 0 ) {
とif文が書き足されてますが、ここはfilesize()>0の間違いではないでしょうか・・?
せっかくstyle.async.min.cssとicomoon.woffが存在するのにpreloadされてなくて可哀想な感じがします(;;)
間違ってたら欲しい物リストから何かお送り申し上げます!
※3分前のコメントは削除ください、不等号がタグとみなされて文章の一部が削除されました(;;)
んにゃんにゃさん。
確かにその通り、create-javascript.php 内からのコピペで条件が反対だったこと忘れてた。
なんだけど・・・
なぜか、当方のサイトでは preload されている!
むしろ ↑ こっちの理由が分からずに困惑中w
なんだ?これ?
— 追記 —
原因が判明。
当サイトで動いてるのは 3.7.11 だった・・・orz
すみません、笑ってしまいました笑
私はるな様のサイトは3.7.11だと気づいた上でコメントしたので、早く指摘すべきでした、申し訳ありません。
・・と思いきや、すでにるな様のサイトは3.8.0になってますね。楽しみに待っております!