トップページの最近の投稿ブロックにカスタムフィールドの値とタイトルを表示したい

0
いいねをした人: 居ません
6件の投稿を表示中 - 1 - 6件目 (全6件中)
  • 投稿者
    投稿
  • #114144

    【お使いの Snow Monkey のバージョン】18.1.0
    【お使いの Snow Monkey Blocks のバージョン】17.0.3
    【お使いの Snow Monkey Editor のバージョン】9.0.3
    【お使いのブラウザ】Google Chrome
    【当該サイトのURL】

    初めてSnow Monkeyテーマを導入し、フォーラムも充実していてとても楽しく勉強させていただいております。ありがとうございます。

    ### 実現したいこと
    トップページのカスタム投稿の最近の投稿一覧の本文(抜粋)の下に、カスタムフィールドのタイトルと値を表示したいのですが可能でしょうか。(my snow monkeyでカスタマイズしております)

    表示したいページ:トップページ
    使用ブロック:最近の投稿(カスタム投稿タイプ)
    レイアウト:リッチメディア
    カスタム投稿タイプ:project
    カスタムフィールド名:project_partner

    表示例)

    ### 発生している問題
    表示されない

    ### 試したこと
    カスタム投稿のアーカイブページには下記で表示しました。
    (表示はできておりますが、コードに問題がありましたらご教授くださいませ)
    こちらを用いて色々と試してみましたがうまく動きませんでした。

    add_action(
    	'snow_monkey_after_entry_content',
    	function () {
    		if (is_post_type_archive('project')) {
    			?>
    <div class="partner">
    	<div class="title">PARTNER</div>
    </div>
    			<?php
    		}
    	}
    );
    1
    いいねをした人:
    #114155
    GONSY
    参加者
    807
    #114166

    GONSYさま

    アドバイスありがとうございます。

    GONSYさんが返信を書かれていたトピックも、オレインさんの記事も、とっても参考になり何度も読ませていただき試してみたのですが、カスタムフィールドは表示されても本文が消えてしまったりしてうまく表示できなくて、、、

    もう一度このページを参考にしてみます。

    少しお時間いただきますが引き続きよろしくお願いいたします。

    0
    いいねをした人: 居ません
    #114175
    GONSY
    参加者
    807

    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;
    	}
    );

     
    適宜調整は必要ですが、参考にしていただければと思います。

    3
    いいねをした人:
    #114178

    GONSYさま

    ご返信ありがとうございます。

    具体的なコードを書いていただき嬉しいです。
    ありがとうございます。
    こちら参考に試してみてまたご報告させていただきます。

    どうぞよろしくお願いいたします。

    0
    いいねをした人: 居ません
    #114221

    GONSYさま

    昨日書いていただいたコードとご紹介いただいた記事を参考に修正しましたら
    希望どおりの表示が実現できました。
    感動です。

    本当にありがとうございました。

    今後もフォーラムを拝見して勉強させていただきます。

    0
    いいねをした人: 居ません
6件の投稿を表示中 - 1 - 6件目 (全6件中)
  • トピック「トップページの最近の投稿ブロックにカスタムフィールドの値とタイトルを表示したい」には新しい返信をつけることはできません。

ドキュメント

Snow Monkey の設定方法やマニュアルを掲載しています。

ドキュメント

フォーラム

Snow Monkey の使い方やカスタマイズについてのご質問・ご要望等はサポートフォーラムで行っています。サポートフォーラムは誰でも閲覧できますが、書き込みできるのは Snow Monkey 購入者のみとなります。

サポートフォーラム

よくあるご質問

Snow Monkey のサービスについて不明な点がある場合は、まずはよくあるご質問をご確認ください。

よくあるご質問

お問い合わせ

よくあるご質問を見ても解決しなかった場合、試用版の申請については問い合わせフォームからお願いいたします。

お問い合わせ

Snow Monkey は Gutenberg ブロックエディターに対応した 100%GPL の WordPress テーマです。拡張性を意識した開発をおこなっており、カスタマイザーとブロックでスピーディーにサイトを立ち上げるだけでなく、CSS やフックを駆使した高度なカスタマイズにも柔軟に対応できます。