こんにちは。
それらのUIが表示されるかどうかは、テーマがそれらの機能をサポート(オプトイン)しているかどうかによりますので、お使いのテーマのフォーラム・掲示板で質問されてみるとよいかもしれません。
テーマ自体を開発しているという事であれば、クラシックテーマかブロックテーマか、またクラシックテーマであればtheme.jsonを持っているかどうかなどで話が変わってきます。
一度、ブロックエディターハンドブックの「開発ガイド > テーマ」セクションの各ページを読む事をお勧めします。
https://ja.wordpress.org/team/handbook/block-editor/how-to-guides/themes/
Aki Hamanoさま
返信ありがとうございます。「開発ガイド > テーマ」セクションを拝見しましたが、特にカスタマイズしているわけではないので、何を参考にしたら良いか分かりませんでした・・・
テーマ自体は独自開発したものを使っており、ブロックテーマを使っています。クラシックではないので、theme.jsonも使っておりません。
>テーマがそれらの機能をサポート(オプトイン)しているかどうかによります
と記載いただいた部分は、独自テーマですと、何か関連ありますでしょうか。ただ、エディタ自体はブロックエディタをそのまま使っていますので、カスタマイズはしていませんし、グーテンベルグ以外のブロックエディタも使っていません。
少ない情報で申し訳ありませんが、もしお分かりになることがあれば、ご教示いただければです。よろしくお願いいたします。
テーマ自体は独自開発したものを使っており、ブロックテーマを使っています。クラシックではないので、theme.jsonも使っておりません。
ブロックテーマかどうかを正確に判断させていただくため、以下を確認いただけますでしょうか。
- 開発しているテーマファイルには、
templates/index.html
や block-templates/index.html
などのファイルを持っていますか?
- ダッシュボードの「外観」メニューの中に「エディター」はありますか?
どちらもYesであればブロックテーマとなりますが、そうでなければクラシックテーマになると思います。
Aki Hamanoさま
度々返信いただき、誠にありがとうございます。
開発しているテーマファイルには、templates/index.html
や block-templates/index.html
などのファイルを持っていますか? ⇒ ありません。
ダッシュボードの「外観」メニューの中に「エディター」はありますか? ⇒ ありません。
私の方が「ブロックエディタ」と「ブロックテーマ」は同じだと思っておりました・・・申し訳ありません。
ということは、クラシックテーマと言うことになりますでしょうか。
また、「Twenty Twenty-Two」などのテーマを改変するのではなく、ほぼ一から開発している形です。
もし追加でお分かりになることがあれば、ご教示いただければと存じます。よろしくお願いいたします
ということは、クラシックテーマと言うことになりますでしょうか。
はい。
サイズにあるパディング・マージン・ブロックの間隔の三つは、テーマ側で明示的にオプトインしていないと使用出来ません。
クラシックテーマの場合は、以下三つの方法があると思います。
1. add_theme_support を使う
この場合、パディングのみオプトイン出来ます。
add_theme_support( 'custom-spacing' );
2. フックを使う
以下は一例で、パディング・マージン・ブロックの間隔全てを有効化します。
function custom_wp_theme_json_default( $theme_json ) {
$new_data = array(
'version' => 2,
'settings' => array(
'spacing' => array(
'padding' => true,
'margin' => true,
'blockGap' => true,
),
),
);
return $theme_json->update_with( $new_data );
}
add_filter( 'wp_theme_json_data_default', 'custom_wp_theme_json_default' );
3. theme.json を導入する
{
"$schema": "https://schemas.wp.org/trunk/theme.json",
"version": 2,
"settings": {
"spacing": {
"padding": true,
"margin": true,
"blockGap": true
}
}
}
または
{
"$schema": "https://schemas.wp.org/trunk/theme.json",
"version": 2,
"settings": {
"appearanceTools": true
}
}
個人的には、3.のtheme.jsonを導入するアプローチをお勧めします。メジャーアップデート毎にtheme.jsonで定義出来る事が増えていっており、今後ブロックテーマ(ブロックエディターではありません)を開発したいとなった時にもその設計手法が役に立つからです。
ただし、このファイルで何が出来るか、導入した時にどのような変化が起こるか、どのように設計するかを理解する必要があります。まずは以下のページを見ていただくのが良いと思います。
グローバル設定とスタイル (theme.json) – Japanese Team – WordPress.org 日本語
もちろん、やりたい事によってはクラシックではなくブロックテーマを開発するのも良いと思います。