【件名】見出しデザインメニューのカスタマイズ機能に制約がある
現象
スキンは、見出しデザインを登録し、メニューに反映する機能を有している。
子テーマのtmpフォルダのように、追加・変更した差分を上書きすることをしていない。
そのため、以下の制約が生じる。
- 親テーマのスキンに追加・変更
親テーマを更新すると、追加・変更した見出しが消えてしまう。
- 子テーマ下に、スキン一式コピーし、追加・変更
子テーマ下に、スキン一式をコピーするなら、親テーマとして配布する必要がない。
原因
get_theme_file_uri
で、親・子テーマの何れかのスキンフォルダURLを取得する。
結果、参照先のスキンフォルダURLは、固定となる。
そのため、該当スキンフォルダに、スキン一式ないと機能しない。
対策
以下に変更例を示す。
親・子テーマのどちらに、該当ファイルがあるか、動的に参照する。
結果、追加・変更した見出しのみ、差分を子テーマから取得する。
$h_url = HVN_SKIN_URL . "assets/css/h{$i}/h{$i}-{$no}.css";
↓
$h_url = get_theme_file_uri(HVN_SKIN . "assets/css/h{$i}/h{$i}-{$no}.css");
変更一覧
パス | ファイル名 |
---|---|
/skin-made-in-heaven/lib/ | function.php |
/skin-made-in-heaven/lib/ | hook-wp.php |
/skin-made-in-heaven/tmp/ | css-custom.php |
/skin-made-in-heaven/ | functions.php |