-
投稿者検索結果
-
2022年11月26日 4:52 PM #114267
返信が含まれるトピック: テンプレートの任意の場所に別のテンプレートを挿入したい
キタジマさま
ご返答いただきありがとうございます。
最初からコードと希望のスクショを共有させていただくべきでしたね。
大変失礼いたしました。コードは以下の通りとなります。
add_filter( 'snow_monkey_template_part_render_template-parts/common/page-header', function( $html ) { $breadcrumbs = get_template_part( 'template-parts/common/breadcrumbs' ); return str_replace( '</h1>', '</h1>'. $breadcrumbs , $html ); return $html; } );
表示したい位置は以下の通りです。
また、ページヘッダーのアイキャッチ画像の位置は『ページヘッダーの上にタイトルを表示』に設定しています。
どうぞよろしくお願い申し上げます。
♥ 0いいねをした人: 居ません2022年11月26日 11:53 AM #114254返信が含まれるトピック: テンプレートの任意の場所に別のテンプレートを挿入したい
‘snow_monkey_template_part_render_template-parts/common/page-header’でフックしてその中でget_template_part(‘template-parts/common/breadcrumbs’)を呼び出すも、その場で展開されてしまい、ヘッダーの一番上にパンくずが表示されてしまいました。
実際に書いたコードと、具体的にどの部分に表示したいのかかがわかるスクショなどを共有してもらうことはできますか?
♥ 0いいねをした人: 居ません2022年11月24日 5:31 PM #114175返信が含まれるトピック: トップページの最近の投稿ブロックにカスタムフィールドの値とタイトルを表示したい
my-snow-monkey.php
に追記したコードをご提示いただけると解決が早いと思います。
試してみたところ、こんな感じのコードで表示されました。
※ご提示の画像のように本文の下にカスタムフィールドをタイトル(パートナー)付で表示させます。
※カスタム投稿タイプの各記事に本文が入っていないと表示されません。
【環境】
WordPress:6.1.1
Snow Monkey:18.1.1
Snow Monkey Blocks:17.1.0
add_filter( 'snow_monkey_template_part_render_template-parts/loop/entry-summary/content/content', function ( $html ) { // カスタムフィールドの値を取得 $partner = get_field( 'project_partner' ); // カスタム投稿タイプ:project でカスタムフィールドに入力がある場合 if ( 'project' === get_post_type() && $partner ) { // (A) // <div class="c-entry-summary__content"> の閉じタグ(</div>)の後ろにパートナー名を配置 // カスタムフィールド(project_partner)用のHTML $partner_list = '</div> <dl class="partner_list"> <dt>パートナー</dt> <dd>' . esc_attr( $partner ) . '</dd> </dl>'; $html = str_replace( '</div>', $partner_list, // 上記の(A)に差し替える $html ); } return $html; } );
適宜調整は必要ですが、参考にしていただければと思います。2022年11月16日 2:01 PM #113887返信が含まれるトピック: カスタム投稿のアーカイブページ改修
サムネイル画像
c-entry-summary__figure
あたりに表示するのはいかがでしょうか。
my-snow-monkey.php
に以下を追記
※カスタムフィールドにはカンマなしの数字入力を想定add_filter( 'snow_monkey_template_part_render_template-parts/loop/entry-summary/figure/figure', function( $html ) { if ( 'event' === get_post_type() ) { $acf_price = get_field( 'h_price' ); return str_replace( '<div class="c-entry-summary__figure">', '<div class="c-entry-summary__figure"><p class="price">¥'. esc_attr( number_format($acf_price) ) ."(税込)</p>", $html ); } return $html; } );
CSS
p.price { position: absolute; top: 0; left: 0; background-color: #389EF2; font-weight: bold; padding: 0 0.5em; z-index: 1; }
これでイメージに近い表現ができると思います。
お試しくださいませ。2022年11月1日 2:16 PM #112967返信が含まれるトピック: カスタム投稿アーカイブページのカスタマイズ
add_filter( 'snow_monkey_template_part_render_template-parts/archive/entry/header/header', function( $html ) { if ( is_post_type_archive( '投稿タイプスラッグ' ) ) { $html = str_replace( '</h1>', '</h1><p class="title_under_lead">タイトル下のリード文です。</p>', // カスタム投稿のアーカイブタイトルの下に追加 $html ); return $html; } } );
こんな感じで表示させたことがあります。
my-snow-monkey.php
に直接記述することになるので、内容の書き換え頻度が低い場合には有効かなぁと思います。
ほかに良い方法もあるかと思いますので、ご参考まで。2022年10月25日 8:54 AM #112744返信が含まれるトピック: 「最近の投稿」ブロックのaタグに属性を追加したい。
ユーザーフォーラムは、ご自身が試されたことを共有していただくことが誰かのためになる場所なのでとてもありがたいです! このコードでも問題ありませんが、強いて言うなら
snow_monkey_template_part_render
ではなくてsnow_monkey_template_part_render_template-parts/loop/entry-summary
を使ったほうがコードがシンプルになるかなと思いました。add_filter( 'snow_monkey_template_part_render_template-parts/loop/entry-summary', function( $html, $name, $vars ) { if ( 'post' === $name ) { if ( 'rich-media' === $vars['_entries_layout'] ) { $html = str_replace( '<a ', '<a target="_top" ', $html ); } } return $html; }, 10, 4 );
♥ 0いいねをした人: 居ません2022年10月23日 2:50 PM #112683返信が含まれるトピック: 「最近の投稿」ブロックのaタグに属性を追加したい。
トピックを読み漁りつつ投稿させていただいたのですが、近いものを発見し、改変して試してみたらできました。失礼いたしました。
挙動としては現在狙ったものができておりますが、私のような方のために追加したコードを載せますので、もし何かご指摘などございましたらご教示いただけますと幸いです。
特に問題なさそうでしたら閉じさせていただきます。
my-snow-monkeyに追加したコード
add_filter( 'snow_monkey_template_part_render', function( $html, $slug, $name, $vars ) { if ( 'template-parts/loop/entry-summary' === $slug && 'post' === $name ) { if ( 'rich-media' === $vars['_entries_layout'] ) { $html = str_replace( '<a ', '<a target="_top" ', $html ); } } return $html; }, 10, 4 );
2022年9月30日 3:34 PM #111816返信が含まれるトピック: コンテンツの順番を並び替えたい。
キタジマさん
add_action は任意のフックポイント(ここでは snow_monkey_prepend_body や snow_monkey_prepend_contents)で処理を実行したり、HTML を追加するものになるので削除はできません。
基本的には、既存の Snow Monkey の HTML を削除したり書き換えたりする場合は snow_monkey_template_part_render フィルターフックを使ったり、My Snow Monkey や子テーマを使ってテンプレートを上書き(同名のファイルを My Snow Monkey や子テーマに配置したら Snow Monkey のテンプレートではなくそのテンプレートが使用されるという仕組み)で対応することになります。
理解できた・・・と思います。勉強になりました!(フィルターフックはまだわかっていないので、これから勉強します)
ありがとうございましたm(_ _)m
2022年9月30日 2:04 PM #111809返信が含まれるトピック: コンテンツの順番を並び替えたい。
と考えているのですが・・・
add_action
は任意のフックポイント(ここではsnow_monkey_prepend_body
やsnow_monkey_prepend_contents
)で処理を実行したり、HTML を追加するものになるので削除はできません。基本的には、既存の Snow Monkey の HTML を削除したり書き換えたりする場合は
snow_monkey_template_part_render
フィルターフックを使ったり、My Snow Monkey や子テーマを使ってテンプレートを上書き(同名のファイルを My Snow Monkey や子テーマに配置したら Snow Monkey のテンプレートではなくそのテンプレートが使用されるという仕組み)で対応することになります。♥ 0いいねをした人: 居ません2022年9月28日 4:03 PM #111691返信が含まれるトピック: 投稿ページの編集方法
Snow Monkey をコードでカスタマイズする場合、基本的には次の3つのいずれかの方法で対応することになります。
1. CSS でカスタマイズする
2.snow_monkey_template_part_render
フックで HTML を書き換える
3. My Snow Monkey や子テーマを使ってカスタマイズしたい部分のテンプレートパーツを上書きするおそらく CSS でカスタマイズできる範囲なのかな?と思いますが、GONSY さんが書かれているように具体的な内容がわかるほうが具体的な回答がつきやすいと思うので、詳細を記述いただければと思います!
♥ 0いいねをした人: 居ません2022年8月12日 6:03 PM #1092982022年8月12日 4:53 PM #1092932022年8月12日 11:21 AM #109275ファイルを直接変更してしまうと、やはりアップデートのたびに同じ作業をしないといけないというのがしんどいので、フックでなんとかするのが良いと思います。
add_filter( 'snow_monkey_template_part_render_template-parts/content/share-buttons', function( $html ) { // ここで書き換えて「@yamakenkenken より」を追加する return $html; } );
♥ 0いいねをした人: 居ません2022年7月1日 12:20 PM #107231返信が含まれるトピック: 任意のタクソノミー表示にカスタムフィールドを出力したい、また表示数を変更したい。
snow_monkey_template_part_render_
フックの第2引数($name
)に投稿タイプ名が入ってくるのでそれで判定するのはどうでしょうか? 設定によっては意図した投稿タイプ名が入ってこない場合もありますが、とりあえず確認してみてください。あと、アーカイブページでは記事タイトル名が h2 ですが、任意のタクソノミーブロックでは h3 になるので
preg_replace()
を使う形に書き換えるのが良いと思います。下記サンプルコードです。add_filter( 'snow_monkey_template_part_render_template-parts/loop/entry-summary/title/title', function ( $html, $name ) { if ( 'news' === $name ) { $html = preg_replace( '|(</h[23]>)|ms', '$1あいうえお', $html ); } return $html; }, 10, 2 );
②カスタム投稿のアーカイブページの横一列の表示数を3つから4つに変更したい。
できれば任意のタクソノミー投稿の表示数も3つから4つに変更したい。1トピック1課題でお願いしているので、お手数おかけして申し訳ありませんが↑の課題については別にトピックを立ててください!
♥ 0いいねをした人: 居ません2022年6月30日 10:30 AM #107162memime
閲覧者【お使いの Snow Monkey のバージョン】17.1.0
【お使いの Snow Monkey Blocks のバージョン】16.0.1
【お使いの Snow Monkey Editor のバージョン】8.0.1
【お使いのブラウザ】firefox
【当該サイトのURL】local### 実現したいこと
①任意のタクソノミーで表示されているc-entry-summary__title部分にカスタムフィールドを表示させたい。
②カスタム投稿のアーカイブページの横一列の表示数を3つから4つに変更したい。
できれば任意のタクソノミー投稿の表示数も3つから4つに変更したい。### 発生している問題
①カスタム投稿のアーカイブページではカスタムフィールドの出力が行えたが、任意のタクソノミーで表示されているパネル?には同じようにカスタムフィールドを表示させることができない。
②どこを弄っていいかわからない。
### 試したこと
/*カスタム投稿 */ add_filter( 'snow_monkey_template_part_render_template-parts/loop/entry-summary/title/title', function ($html) { if (get_post_type('seles_cats')) { // カスタムフィールドで設定したフィールド名を代入 $acf_year = get_field('sex'); $acf_faculty = get_field('price'); $acf_birthday = get_field('birthday'); // テンプレートのh2タグの後に<div class='employee-info'>を追加 $acf_employee_info = "</h2> <div class='employee-info'> <p>" . esc_attr($acf_year) . "</p>" . "<p>" . esc_attr($acf_faculty) . "</p>" . "<p>" . esc_attr($acf_birthday) . "</p>" . "</div>"; // テンプレートパーツのh2タグの後ろにdivタグを追加する $html = str_replace( '</h2>', $acf_employee_info, $html ); } return $html; } );
アーカイブの時は
is_post_type_archive
を指定することで表示できたので、ここをget_post_type
に変更したが表示されなかった。こちらも参考にしましたが、表示ができませんでした。
↓アーカイブページ
↓任意のタクソノミー表示
よろしくお願いします。
-
投稿者検索結果
「snow_monkey_template_part_render」の検索結果
-
検索結果
-
【お使いの Snow Monkey のバージョン】17.1.0
【お使いの Snow Monkey Blocks のバージョン】16.0.1
【お使いの Snow Monkey Editor のバージョン】8.0.1
【お使いのブラウザ】firefox
【当該サイトのURL】local### 実現したいこと
①任意のタクソノミーで表示されているc-entry-summary__title部分にカスタムフィールドを表示させたい。
②カスタム投稿のアーカイブページの横一列の表示数を3つから4つに変更したい。
できれば任意のタクソノミー投稿の表示数も3つから4つに変更したい。### 発生している問題
①カスタム投稿のアーカイブページではカスタムフィールドの出力が行えたが、任意のタクソノミーで表示されているパネル?には同じようにカスタムフィールドを表示させることができない。
②どこを弄っていいかわからない。
### 試したこと
/*カスタム投稿 */ add_filter( 'snow_monkey_template_part_render_template-parts/loop/entry-summary/title/title', function ($html) { if (get_post_type('seles_cats')) { // カスタムフィールドで設定したフィールド名を代入 $acf_year = get_field('sex'); $acf_faculty = get_field('price'); $acf_birthday = get_field('birthday'); // テンプレートのh2タグの後に<div class='employee-info'>を追加 $acf_employee_info = "</h2> <div class='employee-info'> <p>" . esc_attr($acf_year) . "</p>" . "<p>" . esc_attr($acf_faculty) . "</p>" . "<p>" . esc_attr($acf_birthday) . "</p>" . "</div>"; // テンプレートパーツのh2タグの後ろにdivタグを追加する $html = str_replace( '</h2>', $acf_employee_info, $html ); } return $html; } );
アーカイブの時は
is_post_type_archive
を指定することで表示できたので、ここをget_post_type
に変更したが表示されなかった。こちらも参考にしましたが、表示ができませんでした。
↓アーカイブページ
↓任意のタクソノミー表示
よろしくお願いします。