-
検索結果
-
【お使いの Snow Monkey のバージョン】11.5.5
【お使いのブラウザ】Safari、Google Chrome
【当該サイトのURL】(公開できる場合は書いていただいたほうがスムーズです)===
いつもお世話になっております。
早速で恐れ入りますが、カスタフィールドで登録した内容を特定のカテゴリーで表示したく、下記のような条件分岐での記述を考えています。この内容を出力するには、
snow-monkey/template-parts
内のそれぞれ該当する以下ファイルを編集するということでよろしいでしょうか。そうした場合に、
snow-monkey/template-parts/archive/entry/content/content.php
やsnow-monkey/template-parts/content/entry/content/content.php
を用意されているフィルターフックのsnow_monkey_template_part_render
やsnow_monkey_pre_template_part_render
を利用して書き換えるということでしょうか。また、
snow-monkey/template-parts/archive/entry/content/content.php
やsnow-monkey/template-parts/content/entry/content/content.php
は、おそらく複製すると思うのですが、このファイルの my-snow-monkey フォルダ内での置き場所についても教えていただけると大変助かります。カスタマイズには、
my-snow-monkey.php
を利用しています。
どうぞよろしくお願いします。★記事一覧(アーカイブ)ページでの表示
<?php if( is_category( 'cat-hoge' ) ) { //cat-hoge の場合 ?> // カスタームフィールドで登録した内容 項目01:<?php echo esc_html( get_post_meta( $post->ID, ‘cf-hoge01’, true ) ); ?> 項目02:<?php echo esc_html( get_post_meta( $post->ID, ‘cf-hoge02’, true ) ); ?> 項目03:<?php echo esc_html( get_post_meta( $post->ID, ‘cf-hoge03’, true ) ); ?> 項目04:<a href="<?php echo esc_html( get_post_meta( $post->ID, ‘cf-hoge04’, true ) ); ?>”>拡大して見る</a> 項目05:<a href”<?php echo esc_html( get_post_meta( $post->ID, ‘cf-hoge05’, true ) ); ?>”>詳しくはこちら</a> <?php } ?>
snow-monkey/template-parts/archive/entry/content/content.php
内<?php while ( have_posts() ) : ?> // 上記のコードを記述予定。 <?php endwhile; ?>
★記事ページでの表示
<?php if( in_category( 'cat-hoge' ) ) { //cat-hoge の場合 ?> // カスタームフィールドで登録した内容 項目01:<?php echo esc_html( get_post_meta( $post->ID, ‘cf-hoge01’, true ) ); ?> 項目02:<?php echo esc_html( get_post_meta( $post->ID, ‘cf-hoge02’, true ) ); ?> 項目03:<?php echo esc_html( get_post_meta( $post->ID, ‘cf-hoge03’, true ) ); ?> 項目04:<a href="<?php echo esc_html( get_post_meta( $post->ID, ‘cf-hoge04’, true ) ); ?>”>拡大して見る</a> 項目05:<a href”<?php echo esc_html( get_post_meta( $post->ID, ‘cf-hoge05’, true ) ); ?>”>詳しくはこちら</a> <?php } ?>
snow-monkey/template-parts/content/entry/content/content.php
内// 上記のコードを the_content() の上あるいは下に記述予定。 <?php the_content(); ?>
フォーラムの回答された古いバージョンのコードを、最新版でも対応させる為の共有トピックです。
定期的に足していく可能性があります。(または足してください)現在の Snow Monkey のバージョンでは動作しないと言うトピックの回答があった場合も、
これを試したら解決した…も目指したいです。
動作しなくなったコードがあれば書き込んでいただけると、最新のバージョンに合わせたコードを出しやすいです。フォーラムのナレッジ化も進むと思いますので、ご協力どうぞー。===
【対応の Snow Monkey のバージョン】v11.4.0以降
snow_monkey_template_part_render
でフォーラム内に回答されているコードは、
snow_monkey_template_part_render_
に変更することでフックの実行回数が減り表示速度の改善が見込める場合があります。
v11系では少し記述を変更することでも多少の最適化ができます。多くのトピックで該当している例:
add_filter( 'snow_monkey_template_part_render', function ( $html, $slug, $name, $var ) { if ( 'template-parts/なんたらかんたら' === $slug ) { ...略... } }, 10, 4 // または 3 );
の場合、下記に変更します。
add_filter( 'snow_monkey_template_part_render_template-parts/なんたらかんたら', // 元のフック名を、アンダーバー + if文に書かれたslug名を足したフック名に変更します function ( $html, $name, $vars ) { // $slugの引数を削除します ...略... // $slugのif文を除去し、if文内の処理はそのままにします。(if文に$slug以外の比較がある場合はif文はそのまま残します) }, 10, 3 // 4の場合、3に変更します );
===