-
投稿者投稿
-
2023年3月1日 12:02 AM #119243
【お使いの Snow Monkey のバージョン】19.2.0
【お使いの Snow Monkey Blocks のバージョン】8.2.0
【お使いの Snow Monkey Editor のバージョン】9.1.2
【お使いのブラウザ】firefox
【当該サイトのURL】https://kuji-blog.site/category/web/server-domain/### 実現したいこと
表題の通り、アーカイブページに表示した固定ページの目次が反映されないので表示したいです。
### 発生している問題
snow_monkey_prepend_archive_entry_contentでアーカイブページに固定ページを表示させています。
Snow Monkey Blocksで目次ブロックを挿入したのですが、実際のページでは表示されません。
投稿ページの目次をmy snow monkeyを使用して表示しているのでなにかしら影響しているのでしょうか。
よろしくお願い致します。
♥ 0いいねをした人: 居ません2023年3月1日 9:43 AM #119256こちらでも試したいと思うので、固定ページを表示させるために書いているコードと、目次ブロックを表示するために書いているコードをここに貼り付けてもらえますか?
♥ 0いいねをした人: 居ません2023年3月1日 3:31 PM #119286お世話になっております。
コードはこちらです。
/*目次*/ add_filter( 'snow_monkey_display_contents_outline', function( $display ) { if ( is_front_page() ) { return false; } if ( is_single() ) { return true; } //固定ページにも目次を入れたい場合 /*if ( is_page() ) { return true; }*/ return false; } );
♥ 0いいねをした人: 居ません2023年3月1日 4:04 PM #119289ありがとうございます!
snow_monkey_display_contents_outline
フィルターフックは固定ページ・投稿のときしか実行されないので、アーカイブページには影響を与えることができません。一番簡単なのは、アーカイブページに表示している固定ページの中に目次ブロックを配置する方法かなと思います。何らかの理由でブロック配置が NG であれば、下記のようなコードでアーカイブページに目次を入れる感じになりますかね。add_action( 'snow_monkey_before_archive_entry_content', function() { $vars = array( '_title' => __( 'Contents outline', 'snow-monkey' ), ); Helper::get_template_part( 'template-parts/content/contents-outline', null, $vars ); } );
♥ 0いいねをした人: 居ません2023年3月1日 5:33 PM #119294ありがとうございます。
一番簡単なのは、アーカイブページに表示している固定ページの中に目次ブロックを配置する方法かなと思います。
目次ブロックは入れているのですが、なぜか目次が表示されないのです。
コードで出力しているせいなのかと思っていましたが、違うのでしょうか。
また、コードを貼り付けたらこのように表示されました。
♥ 0いいねをした人: 居ません2023年3月1日 5:43 PM #119297あれ……確認します!
♥ 0いいねをした人: 居ません2023年3月1日 11:59 PM #119315あ、一応下記もお願いします!
固定ページを表示させるために書いているコード
♥ 0いいねをした人: 居ません2023年3月2日 9:08 AM #119323お世話になっております。
コードはこちらです。
/* アーカイブページの記事一覧上部に固定ページを挿入 */ add_action( 'snow_monkey_prepend_archive_entry_content', function () { /* 特定のアーカイブページを指定 */ if (is_category('server-domain')) {/* 'news'の記述を各自の環境に合わせて変更 */ $new_query = new \WP_Query( [ 'pagename' => 'server-selection-point',/* 作成したページのスラッグ */ 'post_type' => 'page',/* 固定ページを指定 */ 'post_status' => ['draft']/* 下書きページの指定 */ ] ); if (!$new_query->have_posts()) { return; } $new_query->the_post(); ?> <div class="p-entry-content"> <?php the_content(); ?> </div> <?php wp_reset_postdata(); } } );
♥ 0いいねをした人: 居ません2023年3月2日 11:38 AM #119333目次ブロックが表示されない原因がわかりました! 2点あります。
1) 目次ブロック自体が固定ページ・投稿でしか表示されない
僕も忘れていたのですが、現在目次は固定ページ・投稿でしか表示されません(下記の部分で条件判定して無効化されるため)。
現状これをどうにかする方法がないので、
/snow-monkey/vendor/inc2734/wp-contents-outline/src/shortcode/wp-contents-outline.php
から上記のコードを削除することで、この無効化を防ぐことができます。※Snow Monkey 本体のコードを変えることになるので、この変更は Snow Monkey をアップデートしたときに元に戻ってしまいます。ただ、この変更は本体に反映してしまったほうが良い気がするので、次のアップデート(3月末〜4月頭予定)でとりあえず反映させてしまおうと思います。もしかしたらその後意図せぬ不具合が発生したりした場合はもとに戻す可能性もゼロではありませんが、とりあえずは直接変えてもらって大丈夫です。
2) 固定ページ挿入部分の変更
目次は
.post-xxxx .c-entry__content
という構造になっているときのみ実行されます。なので、上記の変更に加えて、My Snow Monkey に書いている固定ページ挿入部分のコードも変更が必要です。
下記サンプルです(1497 のところは記事の ID です)<div class="post-1497"> <div class="c-entry__content p-entry-content"> <?php the_content(); ?> </div> </div>
♥ 0いいねをした人: 居ません2023年3月2日 5:08 PM #119356ありがとうございます!
無知で申し訳ないのですが、/snow-monkey/vendor/inc2734/wp-contents-outline/src/shortcode/wp-contents-outline.phpはどこから見れますか?
ダッシュボードのテーマファイルエディタからは見れないのでしょうか?
♥ 0いいねをした人: 居ません2023年3月2日 5:42 PM #119362ダッシュボードのテーマファイルエディタからは見れないのでしょうか?
あーちょっとわからないですが、FTP ツールで変更するとか、レンタルサーバーによっては用意されているファイルマネージャーとかからも変更できるかもしれません。
♥ 0いいねをした人: 居ません2023年3月30日 8:42 PM #120914Snow Monkey v20.0.0 で、「1) 目次ブロック自体が固定ページ・投稿でしか表示されない」の仕様を廃止しました。
♥ 0いいねをした人: 居ません2023年3月30日 10:51 PM #120945ありがとうございます!!
本当に助かりました!
対応していただき、感謝です。
トピック閉じます。
♥ 0いいねをした人: 居ません -
投稿者投稿
- トピック「アーカイブページに表示した固定ページの目次が反映されない」には新しい返信をつけることはできません。