emulsion today

emulsion 2.7.9へ向けて

サイトエディタで投稿、固定ページの作成 編集が可能になっています。

Version 16.0.0 では、サイトエディタに command center を使って投稿や、固定ページの新規作成や、編集が可能になっています。

これまでは以下左のスクリーンショットのように、テンプレートを変更しても全体がどのように変化したかを確認することはできませんでしたが、サイトエディタの投稿編集画面では、テンプレートが適用された状態で投稿の編集を行うことができます。

また、コマンドセンターに、addと入力すれば、投稿や固定ページの新規作成を行うことができます。

サイトエディタの編集画面とブロックエディタの編集画面の違い

クラッシックテーマでは、固定ページテンプレート、テンプレート階層に基づくテンプレートは、どちらかといえばテーマ開発者が使用するものでしたが、サイトエディタの登場によって、テンプレートがユーザーに身近な機能になりつつあります。

WordPressのテンプレート階層や固定ページテンプレートの理解は初心者には少し難しい面もあると思いますが、覚えれば様々な様式を作成できる機能なので、この機会に理解を深めておくといいかもしれませんね。(テンプレート階層はクラッシック時代のPHPテンプレートの命名規則ですが、ブロックテーマのhtmlテンプレートも、このテンプレート階層をベースに動作します)

新たに直面した問題

gutenberg 16.1.0では、Style Book でブロックをクリックしても、正常に動作しない
まだ不安定なようなので、今後の様子を見ることにします。

beta2 wp-includes/block-supports/layout.phpにヒントがありそう。

Layout: Move layout definitions out of theme.json by andrewserong · Pull Request #50621 · WordPress/gutenberg

emulsion 2.7.9 変更

emulsion addons プラグインを使用した場合、その投稿がどのテンプレートを使用しているかを表示する機能がありましたが、テンプレートファイルへのリンクに加えて、投稿をエディタで編集するためのリンクを追加することにしました。

theme.json の layout definitions の変更への対応

gutenberg 16.0 + emulsion 2.7.8 迄、definitionsは(emulsion 2.5.4~ 約9か月間)使用してきました。これまで、コアのレイアウトスタイルをテーマ側で安定して上書き可能にする唯一の方法でしたが、WordPress 6.3で機能が変更になる模様です。

いろいろ模索しましたが、新しい機能(layout.php)では、上書きを行う方法は現在のところ見つかっていません。

固執していても仕方がないので、fse.css でルールセットを記述し直して対応することにしました。theme.jsonのdefinitionsの項目は、当面そのまま維持しますが、実質的には、fse.cssの設定で動作します。

グループブロックにバグがありました。修正します。

Note

サイトエディタ投稿編集画面について

サイトエディタの編集画面のスクリーンショットを見ると、サイトヘッダー、アイキャッチ画像は、投稿ヘッダーが、720px 本文部分が920pxになっています。

サイトエディタ編集画面は、iframeで構成されています。emulsionテーマは、body要素クラスに、テンプレートの種類等を表すクラスを使用していますが、サイトエディタのbody要素に、これらのクラスがないためスタイルを割り付けることができないでいます。 これは、すぐには解決できる問題ではありません。

代替え機能を追加することにしました。

emulsion 2.7.9 では、テンプレートパーツのコンテンツをロックします。(ロックしても、幅の変更は可能ですが、変更はテンプレートパーツの変更として保存されますので、変更が他のテンプレートにも反映されます。)

テンプレートパーツに、以下のようにブロックスタイルバリエーションを追加しました。(この設定は、テンプレートの変更として保存されるので、幅の変更は他のテンプレートに影響しません)