「snow_monkey_template_part_render」の検索結果

15件の結果を表示中 - 121 - 135件目 (全240件中)
  • 投稿者
    検索結果
  • #69800
    アバター画像キタジマ タカシ
    参加者
    2461

    これでどうでしょうか! My Snow Monkey プラグインか子テーマの functions.php に貼り付けてみてください。

    add_filter(
    	// 出力される HTML を書き換えるフック。
    	// 対象にしたいテンプレートに応じて templates/layout/wrapper/one-column-full の部分を調整。
    	'snow_monkey_template_part_render_templates/layout/wrapper/one-column-full',
    	function( $html ) {
    		return str_replace(
    			'<div class="l-contents"',
    			'<div class="l-contents" id="l-contents"',
    			$html
    		);
    	}
    );
    1
    いいねをした人: 居ません
    #68410
    マドカ
    閲覧者
    7

    キタジマさん

    早々にご返信いただきましてありがとうございます!
    お返事が遅くなりまして申し訳ございません!

    上記だとやはり希望通りの動作にならず試行錯誤していただのですが、こちらの記事を参考にさせていただきましたらうまくいきました!

    ■参考記事
    カスタム投稿のアーカイブ(記事一覧)で、タイトルの下にカスタムフィールドの内容を表示する

    my-snow-monkeyに記載した内容は以下のとおりです(一部のみの書きかえですが、他の方の参考になれば)。
    もし内容に不適切な箇所があればご指摘いただければ助かります。

    add_filter(
    	'snow_monkey_template_part_render_template-parts/loop/entry-summary',
    	//entry-summary-postが対象
    	function( $html ) {
    		if (get_post_type() === 'works'): //カスタム投稿worksに限定する
    			// 以降の出力を変数に格納する
    			ob_start();
    			?>
    			<div class="client-name">
    				<p><?php echo esc_html (get_field('client_name')); ?></p>
    			</div>
    			<?php
    			// 変数に格納する
    			$works_client = ob_get_clean();
    			// </header>を書き換える
    			return str_replace(
    				'</header>',
    				'</header>'.$works_client,
    				$html
    			);
    		endif;
    		return $html;
    	}
    );

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

    1
    いいねをした人: 居ません
    #68070
    アバター画像キタジマ タカシ
    参加者
    2461

    置換対象が

    <ul>
     	<li class="c-meta__item c-meta__item--author">.*?</li>
    </ul>

    だと、著者名と日付、のようにメタ情報が2つある(ul の中に li が2つ以上ある)と一致しなくなってしまうので、次のように書き換えるとうまくいくかもしれません。

    add_filter(
    	'snow_monkey_template_part_render',
    	function( $html, $slug, $name ) {
    		if ( 'template-parts/widget/snow-monkey-posts' === $slug && 'recent' === $name ) {
    			return preg_replace(
    				'|<li class="c-meta__item c-meta__item--author">.*?</li>|ms',
    				'<li class="c-meta__item client_name">' .ここに表示させたい内容を記載する?. '</li>',
    				$html
    			);
    		}
    		return $html;
    	},
    	10,
    	3
    );
    0
    いいねをした人: 居ません
    #67938
    tomohanano
    参加者
    16

    アクツさん

    ありがとうございます!

    そして、非常にお恥ずかしいです…

    ご指摘どおりのケアレスミスでした。

    書き直したコードは以下のとおりです。

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

    add_filter(
    	'snow_monkey_template_part_render_template-parts/archive/eyecatch',
    	function ( $html, $name, $vars ) {
    		$html = str_replace(
    			'<div class="c-eyecatch">',
    			'<div class="c-eyecatch w1280px">',
    			$html
    		);
    		return $html;
    	},10,3
    );
    
    1
    いいねをした人: 居ません
    #67933
    アクツ
    参加者
    168

    tomohanano さんこんにちは。

    コードがちゃんと動くとかはチェックしていないのですが、記載してくれたコードのフック名が違っているのでひとまずお知らせします

    snow_monkrey_template_part_render_snow_monkey_template_part_render_

    ※monkreyになっているので、そこをmonkeyにする

    2
    いいねをした人: 居ません
    #66987

    返信が含まれるトピック: 一覧の表示項目を変更したい

    アバター画像キタジマ タカシ
    参加者
    2461

    結構聞かれることが多いので、いくつか思いつくやり方をここで書いておきたいと思います。

    CSS で消す

    単純に CSS で消す方法です。これが一番手軽で後方互換性的にも問題が起こりにくいのではないかと思います。

    .c-entry-summary__meta {
      display: none;
    }

    snow_monkey_get_template_part_args_{slug} フィルターフックで消す

    テンプレートパーツの引数を書き換える方法です。メタ情報を表示するかどうかは template-parts/loop/entry-summary.php_display_meta という引数で制御されているので、そこを false に書き換えることでメタ情報が表示されなくなります。

    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/loop/entry-summary',
    	function( $args ) {
    		$args['vars']['_display_meta'] = false;
    		return $args;
    	}
    );

    snow_monkey_template_part_render_{slug} フィルターフックで消す

    テンプレートパーツの HTML を書き換える方法です。メタ情報のテンプレートパーツ template-parts/loop/entry-summary/meta/meta.php の HTML を空(ここでは false にしていますがコールバック関数内で return とかでも OK)にすることでメタ情報を非表示にしています。

    add_filter(
    	'snow_monkey_template_part_render_template-parts/loop/entry-summary/meta/meta',
    	'__return_false'
    );

    snow_monkey_get_template_part_{slug} アクションフックで消す

    テンプレートパーツの HTML を定義する方法です。↑のフィルターフックと似ていますが、違うのは↑はあくまで「既存のテンプレートパーツの書き換え」ですが、これは「テンプレートパーツのファイルをつくらずにテンプレートの中身を定義する」というところです。メタ情報のテンプレートパーツ template-parts/loop/entry-summary/meta/meta.php の HTML を空(ここでは false にしていますがコールバック関数内で return とかでも OK)にすることでメタ情報を非表示にしています。

    add_action(
    	'snow_monkey_get_template_part_template-parts/loop/entry-summary/meta/meta',
    	'__return_false'
    );

    参考:

    1
    いいねをした人: 居ません
    #66985
    アバター画像キタジマ タカシ
    参加者
    2461

    HTML の内容を書き換えるフィルターフックは snow_monkey_template_part_render_テンプレートのスラッグ となります。

    一覧部分のサムネイルのテンプレートを書き換えたい場合は snow_monkey_template_part_render_template-parts/loop/entry-summary/figure/figure です。

    また、一覧部分のサムネイル用のテンプレートには </header> が無いので </header> を対象に置換しようとしても機能しません。return のところを

    return $html . $cv_comment;
    

    に書き換えるとどうでしょうか?

    これで動かないようだったら調査してみます!

    0
    いいねをした人: 居ません
    アバター画像キタジマ タカシ
    参加者
    2461

    あ、ショートコードだと do_shortcode() 関数で囲まないと実行されないかもです。 これでどうですかね?

    add_filter(
    	'snow_monkey_template_part_render_header',
    	function( $html ) {
    		// トップページ以外のときは追加しない
    		if ( ! is_front_page() ) {
    			return $html;
    		}
    		return do_shortcode( '[metaslider id="388"]' ) . $html;
    	}
    );
    0
    いいねをした人: 居ません
    Kokodarwin
    閲覧者
    11

    Metasliderというプラグインでスライダーを作成してみました。
    そしてショートコードを該当の位置に入力したのですが、
    ショートコード自体が表示されてスライダーが表示されませんでした。

    phpの知識が無く恐縮なのですが、私のショートコードの入力方法はあっておりますでしょうか。

     

    add_filter(
    	'snow_monkey_template_part_render_header',
    	function( $html ) {
    		// トップページ以外のときは追加しない
    		if ( ! is_front_page() ) {
    			return $html;
    		}
    
    		ob_start();
    		// 追加するコンテンツを記述
    		?>
    [metaslider id="388"]
    		<!--?php <br ?--> return ob_get_clean() . $html;
    	}
    );
    0
    いいねをした人: 居ません
    アバター画像キタジマ タカシ
    参加者
    2461

    – ヘッダーは2行に設定
    – ヘッダー位置はノーマルに設定
    – スライダーを何らかのプラグインで作成

    として、

    下記のコードを My Snow Monkey プラグインもしくは子テーマの functions.php に追加でいけると思います。

    add_filter(
    	'snow_monkey_template_part_render_header',
    	function( $html ) {
    		// トップページ以外のときは追加しない
    		if ( ! is_front_page() ) {
    			return $html;
    		}
    
    		ob_start();
    		// 追加するコンテンツを記述
    		?>
    ここにスライダーの HTML やショートコードなど
    		<?php
    		return ob_get_clean() . $html;
    	}
    );
    0
    いいねをした人: 居ません
    HaseGawa
    参加者
    20

    キタジマ様

    一応確認ですが、投稿者の HTML を削除するのは「任意のタクソノミーブロック」だけで、カテゴリーアーカイブページの一覧部分からは消さないということであっていますでしょうか?

    投稿者のHTMLはカテゴリーアーカイブページの一覧部分、投稿記事メタ情報などすべてから削除したいのです。

    なお、カテゴリーアーカイブページの一覧部分については以前にキタジマ様からフックを教えていただきましたので削除出来ております。

    また、投稿記事メタ情報部分については、本フォーラムの過去記事に該当するフックが紹介されておりましたのでこれも削除出来ております。

    後は、固定ページに作成した任意のタクソノミーブロックにのみ投稿者が表示されていますので、これを削除したいということです。

    一応現在のフックを掲載しますので、問題点などありましたらご指摘いただけますと助かります。

    /**
     * 投稿ページのメタ情報の投稿者を削除
     */
    add_action(
    	'snow_monkey_entry_meta_items',
    	function() {
    		remove_action( 'snow_monkey_entry_meta_items', 'snow_monkey_entry_meta_items_author', 30 );
    	},
    	9
    );
    
    /**
     * カテゴリーページの投稿者を削除
     */
    add_filter(
    	'snow_monkey_template_part_render_template-parts/loop/entry-summary/meta/meta',
    	function( $html, $name, $vars ) {
    		// カテゴリーアーカイブ表示時、かつ記事一覧部分のとき.
    		if ( is_category() && 'archive' === $vars['_context'] ) {
    			return preg_replace(
    				'|
    <ul>
     	<li class="c-meta__item c-meta__item--author">.*?</li>
    </ul>
    |ms',
    				'',
    				$html
    			);
    		}
    		return $html;
    	},
    	10,
    	3
    );

    よろしくお願いいたします。

    0
    いいねをした人: 居ません
    みしま
    参加者
    58

    サニタイズの視点、完全に飛んでましたので助かります。
    esc_htmをつかって、下記のようなカスタマイズとして利用させていただきます。
    ありがとうございます!

    add_filter(
    	'snow_monkey_template_part_render_template-parts/loop/entry-summary',
    	//entry-summary-postが対象
    	function( $html ) {
    		if (get_post_type() === 'item'): //カスタム投稿 itemに限定する
    			// 以降の出力を変数に格納する
    			ob_start();
    			?>
    			<div class="price__wrapper">
    				<p>税込<?php echo esc_html(number_format(get_field('price'))); ?>円</p>
    			</div>
    			<?php
    			// 変数に格納
    			$kw_price = ob_get_clean();
    			// </header>を書き換える
    			return str_replace(
    				'</header>',
    				'</header>'.$kw_price,
    				$html
    			);
    		endif;
    		return $html;
    	}
    );
    4
    いいねをした人:
    #66067
    アバター画像キタジマ タカシ
    参加者
    2461

    一応下記のコードでグローバルナビゲーションの上に「あいうえお」という文字列を追加できるのですが、グローバルナビゲーションのテンプレートパーツは普通のグローバルナビゲーションだけではなくドロップナビゲーション(スクロールしたら上からにゅっとでてくるナビゲーション)にも流用しているので、そちらにも文字列が表示されてしまいます…。

    add_filter(
    	'snow_monkey_template_part_render_template-parts/nav/global',
    	function( $html, $name, $vars ) {
    		?>
    		あいうえお
    		<?php
    		return ob_get_clean() . $html;
    	},
    	10,
    	3
    );

    v13.0.0 からは判別してどちらか片方に出せるようにしようと思いますが、お急ぎであればとりあえず上記で追加しておいて、ドロップナビゲーションのほうは CSS で消しておくのが良いかもしれません…。

    2
    いいねをした人: 居ません
    #65852

    返信が含まれるトピック: インフィード広告が表示されない

    アバター画像キタジマ タカシ
    参加者
    2461

    コード書いてみました。こんな感じでどうでしょうか?

    /**
     * 投稿の一覧ページで、記事一覧レイアウトが simple のときにインフィード広告を表示
     */
    add_filter(
    	'snow_monkey_template_part_render_template-parts/archive/entry/content/content',
    	function( $html, $name ) {
    		$infeed_ads = get_option( 'mwt-google-infeed-ads' );
    		if ( ! $infeed_ads ) {
    			return $html;
    		}
    
    		$entries_layout = get_theme_mod( $name . '-entries-layout' );
    
    		if ( 'post' !== $name ) {
    			return $html;
    		}
    
    		if ( ! in_array( $entries_layout, [ 'simple' ], true ) ) {
    			return $html;
    		}
    
    		$count = 0;
    
    		return preg_replace_callback(
    			'|(<li class="c-entries__item)|s',
    			function( $matches ) use ( &$count, $infeed_ads ) {
    				$count ++;
    				if ( 0 !== $count % 4 ) {
    					return $matches[0];
    				}
    
    				ob_start();
    				?>
    				<li class="c-entries__item">
    					<?php \Inc2734\WP_Adsense\Helper::the_adsense_code( $infeed_ads ); ?>
    				</li>
    				<?php
    				return ob_get_clean() . $matches[0];
    			},
    			$html
    		);
    	},
    	10,
    	2
    );
    0
    いいねをした人: 居ません
    #65836
    みしま
    参加者
    58

    ob_start()を知らなかったので勉強になりました。

    当初理解できなかったのですが、昨日の配信で
    ・snow_monkey_template_part_render_<slug>
    ・str_replace
    に触れてらっしゃったのでどのような処理かわかりました。

    記載いただいたようにするとheaderとして上部固定などもできるようになりました。
    お手数おかけしました。ありがとうございました。

    1
    いいねをした人: 居ません
15件の結果を表示中 - 121 - 135件目 (全240件中)

ドキュメント

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

ドキュメント

フォーラム

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

サポートフォーラム

よくあるご質問

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

よくあるご質問

お問い合わせ

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

お問い合わせ

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