-
投稿者投稿
-
2019年6月5日 11:19 AM #17533
【お使いの Snow Monkey のバージョン】バージョン: 6.2.1
【お使いのブラウザ】 Chrome===
お世話になっております。
投稿のホームページにしている固定ページのタイトルを表示しようと
MySnowMonkeyに以下のコードを入れました。add_filter( 'snow_monkey_is_output_page_header_title', function( $return ) { if ( is_home() ) { return true; } return $return; } );
表示はできたのですが、
できれば他の固定ページと同じように
【c-page-header】の部分ではなく、
【c-entry__header】の部分に
表示させたいのですが、その場合はどのようにしたらいいでしょうか。どうぞよろしくお願いいたします。
♥ 0いいねをした人: 居ません2019年6月5日 3:25 PM #17542snow_monkey_is_output_page_header_title
はページヘッダーにタイトルを表示するためのフックになるので、.c-entry__header
を出したい場合は別の方法をとる必要があります。いくつか方法はあると思いますが、ブログトップのテンプレート
templates/view/home
の一部を置換する方法を共有します。下記のコードを My Snow Monkey に貼り付けるとどうでしょうか?add_filter( 'snow_monkey_template_part_render', function( $html, $slug ) { if ( 'templates/view/home' !== $slug ) { return $html; } global $post; // 投稿のホームページにしている固定ページの情報を取得 // (これをしないと表示されるタイトルが一覧の1件目のタイトルになる) ob_start(); $post = get_post( get_option( 'page_for_posts' ) ); setup_postdata( $post ); // 記事ヘッダー( <code>.c-entry__header</code> )の HTML を取得 Helper::get_template_part( 'template-parts/content/entry/header/header' ); $entry_header = ob_get_clean(); // 投稿データをリセット wp_reset_postdata(); // 置換して記事ヘッダーを足す return str_replace( '<div class="c-entry__body">', $entry_header . '<div class="c-entry__body">', $html ); }, 10, 2 );
♥ 0いいねをした人: 居ません2019年6月5日 7:34 PM #17552お忙しい中ありがとうございます!
そのまま貼り付けると、
「サイトに技術的な問題が発生しています。」と出てしまいます。。。
どこか間違えたかなと、よーく見ていますが取り急ぎご報告です。♥ 0いいねをした人: 居ません2019年6月6日 9:44 AM #17565あ!すみません!こちらのミスでした。下記でもう一度試してみてください。
add_filter( 'snow_monkey_template_part_render', function( $html, $slug ) { if ( 'templates/view/home' !== $slug ) { return $html; } global $post; // 投稿のホームページにしている固定ページの情報を取得 // (これをしないと表示されるタイトルが一覧の1件目のタイトルになる) ob_start(); $post = get_post( get_option( 'page_for_posts' ) ); setup_postdata( $post ); // 記事ヘッダー( <code>.c-entry__header</code> )の HTML を取得 \Framework\Helper::get_template_part( 'template-parts/content/entry/header/header' ); $entry_header = ob_get_clean(); // 投稿データをリセット wp_reset_postdata(); // 置換して記事ヘッダーを足す return str_replace( '<div class="c-entry__body">', $entry_header . '<div class="c-entry__body">', $html ); }, 10, 2 );
♥ 0いいねをした人: 居ません2019年6月6日 12:59 PM #17580こっちのほうがもっとシンプルでした!
add_filter( 'snow_monkey_template_part_render', function( $html, $slug ) { if ( 'templates/view/home' !== $slug ) { return $html; } // 記事ヘッダー( <code>.c-entry__header</code> )の HTML を取得 \Framework\Helper::get_template_part( 'template-parts/archive/entry/header/header' ); $entry_header = ob_get_clean(); // 置換して記事ヘッダーを足す return str_replace( '<div class="c-entry__body">', $entry_header . '<div class="c-entry__body">', $html ); }, 10, 2 );
♥ 0いいねをした人: 居ません2019年6月8日 7:18 AM #17686キタジマさん
コードをお送り頂きありがとうございます!
返信が大変遅くなり失礼しました!最後にお送りいただいたコードは、タイトルが出ましたが、
サイドバーがメインコンテンツの下に入り込むようになりました。その前に送っていただいたコードは問題ございませんでした!
どうぞよろしくお願いいたします。
♥ 0いいねをした人: 居ません2019年6月8日 10:27 AM #17710あ、すみません、一部コード間違ってました…。
add_filter( 'snow_monkey_template_part_render', function( $html, $slug ) { if ( 'templates/view/home' !== $slug ) { return $html; } // 記事ヘッダー( <code>.c-entry__header</code> )の HTML を取得 ob_start(); \Framework\Helper::get_template_part( 'template-parts/archive/entry/header/header' ); $entry_header = ob_get_clean(); // 置換して記事ヘッダーを足す return str_replace( '<div class="c-entry__body">', $entry_header . '<div class="c-entry__body">', $html ); }, 10, 2 );
とりあえず解決はしたということでトピック閉じます!
♥ 0いいねをした人: 居ません2019年6月8日 10:30 AM #17711キタジマさん
修正のコードありがとうございます!
問題ございませんでしたー!♥ 0いいねをした人: 居ません2019年6月18日 2:14 PM #18838こちら、Snow Monkey v7 からデフォルトでタイトル表示されるようになりました。おそらく v7 でこのコードを貼り付けていると二重にタイトルが表示されてしまうと思いますので、その場合はコードを削除してください。
♥ 0いいねをした人: 居ません -
投稿者投稿
- トピック「投稿のホームページにしている固定ページのタイトルを表示したいです。」には新しい返信をつけることはできません。