フォーラムへの返信
-
投稿者投稿
-
ひとまず下記のトピックを参照されるのがわかりやすいと思います。
そして、下記のコードを My Snow Monkey か子テーマに追加すればアコーディオンの各タイトルも対象になります。
add_filter( 'inc2734_wp_contents_outline_args', function( $attributes ) { $attributes['selector'] = implode( ',', [ $attributes['selector'], '.smb-accordion__item', ] ); $attributes['headings'] = implode( ',', [ $attributes['headings'], '.smb-accordion__item__title', ] ); return $attributes; } );
ただ、目次を最初の見出しの上に移動する設定にしている場合、目次がアコーディオンの中に入ってしまって正しく動作しなくなってしまうので注意してください。
v16.0.3 で修正してみましたがどうでしょうか!?
♥ 0Who liked: No userただ、なぜか私の間違えた記述でもうまく動きました。
PHPのバグですかね汗なぜ誤ったエスケープされるとコケるのかは僕もわからないのですが、tantive.sl さんに提示してもらったコードだと
\\
が出力されることになり、エスケープ自体には誤りがなくなるのでコケない、ということになるみたいです。pluginDir
自体は表示されないブロック群では使用していないので、出力が正しい(意味のある)ものでなくても誤ったエスケープがされていなければちゃんと表示されるということになります。いついかなる時もバックスラッシュをエスケープシーケンス化して良いのかが分からなかったので、
ここは多分大丈夫そうだったのでこの対応で行こうと思います。ご協力ありがとうございます!
すみません! もし良かったら下記の変更を試してみてもらえますか?
pluginDir: '<?php echo esc_attr( SNOW_MONKEY_BLOCKS_DIR_PATH ); ?>',
↓
pluginDir: '<?php echo esc_attr( realpath( SNOW_MONKEY_BLOCKS_DIR_PATH ) ); ?>',
♥ 0Who liked: No user見当たりません。
ただ、正常に動作しているサーバ上でも見当たりませんでした。わーすみません、書き方がわるかったです。tantive.sl さんが書かれているとおりです。この辺のファイルの欠損もなさそうですね。
複数種類出ていますが、同じエラーが7つ出ている箇所があって、うまく表示されないブロックの数と一致しているのでこれが原因でしょうか。
Uncaught ReferenceError: smb is not defined
あ、これ怪しいですね。下記の部分で JavaScript のグローバル変数
smb
を定義しているのですが、これが何らかの理由でこれが出力されていない感じですかね?♥ 0Who liked: No userそうですね。bodyを必ずしも入れなければいけないというわけではないのですが、セレクタを.slug-{スラッグ}のみにした場合、以下のように置換がなされます。
あーそうか!確かにそうですね、失礼しました。
確かにご教示いただいたこの方法でクラスの置換が行われなくなるため、.editor-styles-wrapperセレクタを意識せずにCSSを記述しても、フロント側同様のスタイルをそのままエディターに反映させられるようになるのですが、.editor-styles-wrapperの自動置換が無くなることで、今度は管理画面上のブロックエディター外の部分にもスタイルが反映されるようになるため、この方法を少し躊躇っていました。
もしかしたらもっと上手い方法があるかもですが、僕は
add_editor_style()
・enqueue_block_editor_assets
で読み込む用の CSS をそれぞれ用意しておいて、適用させたい箇所によって書き分けていますねー。.editor-styles-wrapper
にクラスを追加するオフィシャルな方法は無いと思います。body.slug-{スラッグ}
ではなく.slug-{スラッグ}
にしたら良いのではと思ったのですがどうですかね?どうしても
body.slug-{スラッグ}
にする必要があるのであれば、追加 CSS やadd_editor_style()
ではなくて、enqueue_block_editor_assets
でwp_enqueue_style()
すればクラスの置換が行われずに読み込めますよ。♥ 0Who liked: No user既にメニューを作成しているので、「編集するメニューを選択」から作成した「GHオーロラ」というのを選択しました。(その他の「お問い合わせ」「スマホ固定ナビ」というのは、私が色々いじっていたら、これらが追加されてしまったものです)
「GH オーロラ」メニューには現在ホーム、グループホーム、〜お問い合わせのメニュー項目が追加されていますよね。そしてこの「GH オーロラ」メニューはグローバルナビゲーションとドロワーナビゲーションに割り当てられていますよね(フッター固定ナビゲーションには未割り当て)。フッター固定ナビゲーションにもチェックを入れて保存するとフッター固定ナビゲーションにこのメニューが表示されるようになるはずです。
ただ、本筋からはそれますが、フッター固定ナビゲーションは表示範囲が狭いので、このメニュー項目数だとおそらくギュッと潰れて表示されてしまうと思います。なので個人的には「スマホ固定ナビ」メニューに切り替えて、それをフッター固定ナビゲーションに割り当てて、最大4個くらいでメニュー項目を追加するのが良いと思います。
3の「メニューに項目を追加する」という部分が理解不十分です。
メニューの項目というのは、貼り付けていただいた画像でいえばホーム、グループホーム、〜お問い合わせの部分です。
WordPress のナビゲーションは、まず「メニュー」をつくり、その中に「メニュー項目」を追加し、そしてそれをテーマで定義されてナビゲーション位置に割り当てることで表示されるようになります。もし「スマホ固定ナビ」メニューにメニュー項目を追加したいのであれば、
1. 「編集するメニューを選択」のところで「スマホ固定ナビ」を選択し、
2. 切り替わったら「メニュー項目を追加」のところから任意のページやカテゴリー等を選択して追加し、
3. 「メニュー設定」のところで「フッター固定ナビゲーション」にチェックして保存してください。
-
投稿者投稿