「snow_monkey_get_template_part_args」の検索結果

15件の結果を表示中 - 1 - 15件目 (全108件中)
  • 投稿者
    検索結果
  • #134078

    返信が含まれるトピック: 最新の投稿の抜粋と表示件数

    キタジマ タカシ
    参加者
    2162

    書き直してみました! 下記試してみてください。

    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/widget/snow-monkey-posts',
    	function( $args ) {
    		// 最近の投稿ブロックのとき
    		if ( 'snow-monkey-blocks/recent-posts' === $args['vars']['_context'] ) {
    			// レイアウトが「テキスト2」のとき
    			if ( 'text2' === $args['vars']['_entries_layout'] ) {
    				// 抜粋の表示を有効化
    				$args['vars']['_display_item_excerpt'] = true;
    				// 抜粋の文字数を変更
    				$args['vars']['_excerpt_length'] = 30; // 任意の数値を設定してください
    				// 表示件数を変更
    				$args['vars']['_posts_query']->set( 'posts_per_page', 30 );
    				// 並び順を変更
    				$args['vars']['_posts_query']->set( 'orderby', 'title' );
    				$args['vars']['_posts_query']->set( 'order', 'ASC' );
    				// セットしたクエリーをもとに WP_Query をリセット
    				$args['vars']['_posts_query']->query( $args['vars']['_posts_query']->query_vars );
    			}
    		}
    		return $args;
    	}
    );
    0
    いいねをした人: 居ません
    #134007

    返信が含まれるトピック: 最新の投稿の抜粋と表示件数

    キタジマ タカシ
    参加者
    2162

    ありがとうございます! 下記のように書き換えてみてください。
    (表示件数を変更、抜粋の文字数を変更のところを書き換えました)

    /**
    投稿一覧の制御
     */
    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/widget/snow-monkey-posts',
    	function( $args ) {
    		// 最近の投稿ブロックのとき
    		if ( 'snow-monkey-blocks/recent-posts' === $args['vars']['_context'] ) {
    			// レイアウトが「テキスト2」のとき
    			if ( 'text2' === $args['vars']['_entries_layout'] ) {
    				// 抜粋の表示を有効化
    				$args['vars']['_display_item_excerpt'] = true;
    				// 表示件数を変更
    				$args['vars']['_posts_query']->posts_per_page = 30;
    				// 抜粋の文字数を変更
    				$args['vars']['_excerpt_length'] = 30; // 任意の数値を設定してください
    			}
    		}
    		return $args;
    	}
    );
    0
    いいねをした人: 居ません
    #134001

    返信が含まれるトピック: 最新の投稿の抜粋と表示件数

    otomeweb
    参加者
    1

    文字数ありがとうございます
    エラーメッセージは以下の通りです



    Fatal error: Uncaught Error: Cannot use object of type WP_Query as array in /home/xs565030/piemx.me/public_html/x01.piemx.me/wp-content/plugins/my-snow-monkey/my-snow-monkey.php:46 Stack trace: #0 /home/xs565030/piemx.me/public_html/x01.piemx.me/wp-includes/class-wp-hook.php(324): {closure}(Array) #1 /home/xs565030/piemx.me/public_html/x01.piemx.me/wp-includes/plugin.php(205): WP_Hook->apply_filters(Array, Array) #2 /home/xs565030/piemx.me/public_html/x01.piemx.me/wp-content/themes/snow-monkey/app/constructor/view-controller.php(75): apply_filters(‘snow_monkey_get…’, Array) #3 /home/xs565030/piemx.me/public_html/x01.piemx.me/wp-includes/class-wp-hook.php(324): {closure}(Array) #4 /home/xs565030/piemx.me/public_html/x01.piemx.me/wp-includes/plugin.php(205): WP_Hook->apply_filters(Array, Array) #5 /home/xs565030/piemx.me/public_html/x01.piemx.me/wp-content/themes/snow-monkey/vendor/inc2734/wp-view-controller/src/App/Contract/Template_Tag.php(284): apply_filters(‘inc2734_wp_view…’, Array) #6 /home/xs565030/piemx.me/publi in /home/xs565030/piemx.me/public_html/x01.piemx.me/wp-content/plugins/my-snow-monkey/my-snow-monkey.php on line 46


    現在のコード

    /**
    投稿一覧の制御
     */
    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/widget/snow-monkey-posts',
    	function( $args ) {
    		// 最近の投稿ブロックのとき
    		if ( 'snow-monkey-blocks/recent-posts' === $args['vars']['_context'] ) {
    			// レイアウトが「テキスト2」のとき
    			if ( 'text2' === $args['vars']['_entries_layout'] ) {
    				// 抜粋の表示を有効化
    				$args['vars']['_display_item_excerpt'] = true;
    				// 表示件数を変更
    				$args['vars']['_posts_query']['posts_per_page'] = 30;
    				// 抜粋の文字数を変更
    				$args['vars']['_posts_query']['_excerpt_length'] = 30; // 任意の数値を設定してください
    			}
    		}
    		return $args;
    	}
    );

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

    返信が含まれるトピック: 最新の投稿の抜粋と表示件数

    キタジマ タカシ
    参加者
    2162

    Snow Monkey Blocks の「最近の投稿」ブロックの場合、コードを追加すれば表示は可能です。

    下記の PHP コードを My Snow Monkey プラグインか子テーマの functions.php に追加してみてください。

    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/widget/snow-monkey-posts',
    	function( $args ) {
    		// 最近の投稿ブロックのとき
    		if ( 'snow-monkey-blocks/recent-posts' === $args['vars']['_context'] ) {
    			// レイアウトが「テキスト2」のとき
    			if ( 'text2' === $args['vars']['_entries_layout'] ) {
    				// 抜粋の表示を有効化
    				$args['vars']['_display_item_excerpt'] = true;
    				// 表示件数を変更
    				$args['vars']['_posts_query']['posts_per_page'] = 30;
    			}
    		}
    		return $args;
    	}
    );

    これで抜粋が HTML 上では出力されるようになりますが、CSS 的には非表示になっているので、下記の CSS を追加 CSS に追加してみてください。

    .c-entries--text2 .c-entry-summary__content {
        display: block;
    }

    ただ、ここから見た目の調整は CSS でできる範囲しか難しいので、なるべく思い通りの表示に近づけたいのであれば、クエリーブロックで組み立てるとか、一覧を表示するショートコードを自作するのも手かもしれません。

    0
    いいねをした人: 居ません
    林淳一
    参加者
    18

    キタジマ様

    GONSY様に共有していただいたものを参考に、以下をmy-snow-monkey.phpに加えましたが、エラーが出ました。

    add_filter(
    'snow_monkey_get_template_part_args_template-parts/archive/entry/content/content',
    function( $args ) {
    if ( in_category(6) || post_is_in_descendant_category(6)) {
    // 記事一覧レイアウトを text に変更
    $args['vars']['_entries_layout'] = 'text';
    }
    return $args;
    }
    );

    0
    いいねをした人: 居ません
    林淳一
    参加者

    【お使いの Snow Monkey のバージョン】25.1.6
    【お使いの Snow Monkey Blocks のバージョン】20.3.1
    【お使いの Snow Monkey Editor のバージョン】9.3.0
    【お使いのブラウザ】Firefox 115.3.1
    【当該サイトのURL】

    ### 実現したいこと
    カテゴリー「新着情報」とその子カテゴリー「お知らせ」のアーカイブページの記事一覧レイアウトを「テキスト」、それ以外はリッチメディアにしたい。
    カテゴリー「新着情報」の子カテゴリーは今後増えていくので、それらにも記事一覧レイアウトを「テキスト」にしたい。

    ### 試したこと
    以下をmy-snow-monkey.phpに追加したところ、保存はできましたが、表示エラーになりました。

    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/archive/entry/content/content',
    	function( $args ) {
    		if ( is_category( 'topics' ) || is_parent_slug() === 'topics') {
    			// 記事一覧レイアウトを text に変更
    			$args['vars']['_entries_layout'] = 'text';
    		}
    		return $args;
    	}
    );

    解決策を教えていただけますでしょうか。
    よろしくお願いいたします。

    キタジマ タカシ
    参加者
    2162

    こんな感じでどうでしょう? My Snow Monkey プラグインか子テーマの functions.php に追記してみてください。

    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/loop/entry-summary/term/term',
    	function( $args ) {
    		// カスタム投稿タイプ「news」以外のときは処理しない
    		if ( 'news' !== get_post_type() ) {
    			return $args;
    		}
    
    		// 表示するタームを書き換える(この場合はタクソノミー「news_category2」に変更)
    		$args['vars']['_terms'] = get_the_terms( get_the_ID(), 'news_category2' );
    		return $args;
    	}
    );
    0
    いいねをした人: 居ません
    #130687

    返信が含まれるトピック: ボタン要素にaria-labelの追加を希望

    hisanobu
    参加者
    24

    アップデートで確認できました!
    他の部分まで実装いただきありがとうございます。

    // ハンバーガーメニューのmenuを削除
    add_filter(
      'snow_monkey_get_template_part_args_template-parts/header/hamburger-btn',
      function( $args ) {
        $args['vars']['_label'] = '';
        return $args;
      }
    );

    文字の削除はこのように処理しているのですが、同時にフックでbuttonに属性追加することってできますでしょうか?
    それともJavaScriptが適切ですかね?

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

    【お使いの Snow Monkey のバージョン】25.1.2
    【お使いの Snow Monkey Blocks のバージョン】20.1.3
    【お使いの Snow Monkey Editor のバージョン】9.3.0
    【お使いのブラウザ】Chrome

    ### 実現したいこと

    ①「最近の投稿」で1個目のみレイアウトを変えたい
    ②「最近の投稿」の「レイアウト」の「シンプル」でボタンを入れたい
    ③「最近の投稿」の「レイアウト」の「シンプル」で「タイトル」と日付の上下を入れ替えたい

    ※完成イメージ

    ### 発生している問題

    現在の状況

    ①「最近の投稿」で1個目のみレイアウトを変えたい

    →1個目が2回表示される。

    (「最新の投稿」を2つに分けて表示しています)

    ②「最近の投稿」の「レイアウト」の「シンプル」でボタンを入れたい

    →「リッチメディア」でのみ表示できた。

    ③「最近の投稿」の「レイアウト」の「シンプル」で「タイトル」と日付の上下を入れ替えたい。

    →入れ替割らない。

    ### 試したこと

    ①「最近の投稿」で1個目のみレイアウトを変えたい

    以下のページを参考にまず、「最近の投稿」を2つに分けて、1個目と2個目以降でレイアウトを変更。

    2個目以降の「最近」の投稿に「$args = array( ‘posts_per_page’ => 10, ‘offset’ => 1, );」を入れ込む方法がわからない。

    https://oji-chan.net/wp_from-2nd-post/

    ②「最近の投稿」の「レイアウト」の「シンプル」でボタンを入れたい

    どのトピックか分からなくなってしまったのですが、サポートフォーラムのトピックに似たような質問があり、それを参考に以下のコードを入力。

    /**
     * 最近の投稿ブロックの抜粋の後ろにボタンを追加する
     */
    add_filter(
    	'inc2734_wp_awesome_widgets_render_widget',
    	function( $widget, $args, $instance ) {
    		// ウィジェットからの呼び出しの場合は何もしない
    		if ( ! empty( $args['name'] ) ) {
    			return $widget;
    		}
    
    		// 最近の投稿ブロック以外の場合は何もしない
    		if ( 0 !== strpos( $args['widget_id'], 'snow_monkey_blocks_recent_posts-' ) ) {
    			return $widget;
    		}
    
    		// レイアウトがリッチメディア以外の場合は何もしない
    		if ( 'rich-media' !== $instance['layout'] ) {
    			return $widget;
    		}
    
    		$widget = preg_replace(
    			'|(<div class="c-entry-summary__content">)(.+?)(<\/div>)|ms',
    			'$1$2<div class="u-text-center" style="margin-top: .5em"><span class="c-btn">もっと詳しく</span></div>$3',
    			$widget
    		);
    
    		return $widget;
    	},
    	10,
    	3
    );
    
    /**
     * リッチメディアの抜粋表示の文字数を変更
     * ※「最近の投稿ブロック」だけでなく、記事一覧などでリッチメディアを使っている場合にはそこにも反映されてしまうので注意
     */
    add_filter(
    	'snow_monkey_get_template_part_args',
    	function( $args ) {
    		// 抜粋表示以外のテンプレート呼び出しの場合は何もしない
    		if ( 'template-parts/loop/entry-summary/content/content' !== $args['slug'] ) {
    			return $args;
    		}
    
    		// レイアウトがリッチメディア以外の場合は何もしない
    		if ( ! isset( $args['vars']['_entries_layout'] ) || 'rich-media' !== $args['vars']['_entries_layout'] ) {
    			return $args;
    		}
    
    		$args['vars']['_excerpt_length'] = 80; // ここの数値を適当な数値に変更する
    
    		return $args;
    	}
    );

    →「リッチメディア」ではボタンが表示されますが、「シンプル」では表示されず。

    // レイアウトがリッチメディア以外の場合は何もしない
    if ( 'rich-media' !== $instance['layout'] ) {
    	return $widget;
    }

    の「’rich-media’」に他の文字を入れればいいと思うのですが、その文字がわかりません。

    ③「最近の投稿」の「レイアウト」の「シンプル」で「タイトル」と日付の上下を入れ替えたい。

    ②のコードを参考にHTMLを変更しようとしたのですが、どのように変更したら良いかわかりません。

    おいそがしいところ恐縮ですが、ご教示いただけますと幸いです。

    hoshiimo.run
    参加者

    【お使いの Snow Monkey のバージョン】:18.2.0
    【お使いの Snow Monkey Blocks のバージョン】:17.2.0
    【お使いの Snow Monkey Editor のバージョン】:9.1.1
    【お使いのブラウザ】:chrome
    【当該サイトのURL】:-

    ### 実現したいこと

    カスタム投稿タイプのアーカイブページ(一覧ページ)で特定の記事を除外する方法について教えて頂きたいです。

    具体的には、各記事に設定したカスタムフィールドで「一覧に表示させる?」を真偽値で入力し、その結果に応じて、一覧ページへの表示を出し分けたいと考えています。

    ### 発生している問題

    サブクエリの情報を書き換えられない

    ### 試したこと

    以下のページを参考に、snow_monkey_get_template_part_args_template-parts/common/entries/entries/postsフックを使用して、まずはサブクエリの表示をカスタマイズしようと試みました。

    ※本来の目的は、カスタムフィールドの値により特定の記事の表示を除外することですが、posts_per_pageで試しにやってみました

    $args['vars']['_posts_query']->set( 'posts_per_page', 5)
    

    しかし、これではサブクエリが上書きされませんでした。

    回答するために不足する情報等があれば返信ください。

    以上、宜しくお願いします。

    ume
    参加者

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

    ### 実現したいこと

    記事一覧ページ(投稿タイプ甲)を作成しています。
    甲にはタクソノミーA、タクソノミーBが表示されています。
    アーカイブ甲は、上からAの記事が5つ、その下にBの記事が5つ並んでおり、
    アーカイブ甲の中で、タクソノミーAの先頭に見出し①、タクソノミーBの先頭に見出し②を追加したいです。

    ### 発生している問題

    ### 試したこと
    以下のアクションフックを試した
    snow_monkey_template_part_render_template-parts/archive/entry/header/header
    snow_monkey_get_template_part_args_template-parts/loop/entry-summary/term/term

    add_filter(
    	'snow_monkey_template_part_render_template-parts/archive/entry/header/header',
    	function ( $html ) {
    		if ( is_tax('sales') )  {
    			$html = preg_replace(
    					'|(<h1 class="c-entry__title">.*?</h1>)|ms',
    					'<h1 class="c-entry__title">役員</h1><p>役員についての説明文</p>',
    			$html
    			);
    		}
    		return $html;
    	}
    );

    ↑のようなコードを使うのかなと予想は立っているのですがほとんど解決案が出てきません。
    何卒お力添えよろしくお願い申し上げます。

    #126624
    キタジマ タカシ
    参加者
    2162

    こんな感じでどうですかね?

    add_filter(
    	'snow_monkey_get_template_part_args',
    	function( $args ) {
    		// 記事一覧カテゴリー以外のテンプレートの場合は無視
    		if ( 'template-parts/loop/entry-summary/term/term' !== $args['slug'] ) {
    			return $args;
    		}
    
    		// 投稿以外の場合は無視
    		if ( 'post' !== $args['name'] ) {
    			return $args;
    		}
    
    		$new_terms = array();
    		$terms     = get_the_terms( get_the_ID(), 'category' );
    		foreach ( $terms as $term ) {
    			$term_ids = get_ancestors( $term->term_id, 'category', 'taxonomy' );
    			krsort( $term_ids );
    
    			// チェックしたカテゴリーと先祖のカテゴリー情報をカテゴリーラベルとして使用
    			foreach ( $term_ids as $term_id ) {
    				$new_terms[ $term_id ] = get_term( $term_id, 'category' );
    			}
    			$new_terms[ $term->term_id ] = $term;
    		}
    		$args['vars']['_terms'] = $new_terms;
    
    		return $args;
    	}
    );
    1
    いいねをした人:
    #126619
    キタジマ タカシ
    参加者
    2162

    末端カテゴリーのみにチェックを変える事も可能です。

    末端カテゴリーのみにチェックした場合の想定でコードを書いてみました。

    add_filter(
    	'snow_monkey_get_template_part_args',
    	function( $args ) {
    		// 記事一覧カテゴリー以外のテンプレートの場合は無視
    		if ( 'template-parts/loop/entry-summary/term/term' !== $args['slug'] ) {
    			return $args;
    		}
    
    		// 投稿以外の場合は無視
    		if ( 'post' !== $args['name'] ) {
    			return $args;
    		}
    
    		$terms = get_the_terms( get_the_ID(), 'category' );
    		if ( $terms ) {
    			// チェックしたカテゴリーを元にその先祖カテゴリーを取得
    			$term      = $terms[0];
    			$term_ids  = get_ancestors( $term->term_id, 'category', 'taxonomy' );
    
    			// チェックしたカテゴリーと先祖のカテゴリー情報をカテゴリーラベルとして使用
    			$new_terms = array();
    			foreach ( $term_ids as $term_id ) {
    				$new_terms[] = get_term( $term_id, 'category' );
    			}
    			krsort( $new_terms );
    			$new_terms[]            = $term;
    			$args['vars']['_terms'] = $new_terms;
    		}
    
    		return $args;
    	}
    );
    5
    いいねをした人:
    mrc
    参加者

    【お使いの Snow Monkey のバージョン】
    バージョン: 20.1.0
    【お使いの Snow Monkey Blocks のバージョン】
    バージョン 19.3.2
    【お使いの Snow Monkey Editor のバージョン】
    バージョン 9.2.5
    【お使いの Snow Monkey Forms のバージョン】
    バージョン 5.0.7
    【お使いのブラウザ】
    Chrome
    【当該サイトのURL】

    ### 実現したいこと

    投稿一覧(リッチメディア)で、新しく投稿されたものに関しては、カテゴリラベルのところにNewマークがつくようにしたい。
    加えて、新しく投稿されたもの(Newマークがつくもの)以外のカテゴリラベルの表示位置を変更したい。
    ※Newマークがついたものは、一定期間が過ぎたら他と同じく、変更した表示位置にカテゴリ表示されるようにしたいです。

    ### 発生している問題

    投稿一覧で、「新しく投稿されたものに関してはカテゴリラベルのところにNewマークがつくようにする」というのは他の質問トピックを参考にして設定することができました。
    新しく投稿されたもの(Newマークがつくもの)以外のカテゴリラベルの表示位置を変更するということに関しては、cssで挑戦してみたものの、Newマークを含む全てのラベルに反映されてしまうのでできませんでした。

    Newマークがつくようにするものと、その他のもの、という条件で分けるカスタマイズをする必要がありますでしょうか?

    ### 試したこと

    「新しく投稿されたものに関してはカテゴリラベルのところにNewマークがつくようにする」は以下のコードを加えました。

    add_filter(
    ‘snow_monkey_get_template_part_args_template-parts/loop/entry-summary/term/term’,
    function( $args ) {
    $days = 3; // NEWマークを表示する日数
    $now = date_i18n( ‘U’ ); // 今の時間
    $entry = get_the_time( ‘U’ ); // 投稿日の時間
    $term = date( ‘U’,( $now – $entry ) ) / 86400;
    if ( $days > $term ) {
    $new_term = new stdClass();
    $new_term->taxonomy = ‘my-new’;
    $new_term->term_id = 0;
    $new_term->name = ‘NEW’;
    $args[‘vars’][‘_terms’] = [ $new_term ];
    }

    return $args;
    }
    );

    また、こちらのトピックを参考にラベルの表示位置を変更しようとしたのですが、できませんでした。

    #118994
    akosan
    参加者
    31

    >キタジマさん

    ありがとうございます。category → post_tag へ変更してCSSも変更しました。

    表示が出てこなかったので調べて以下のようにやってみたのですが変更できず行き詰まっています。

    // 投稿以外の場合は無視

    if ( 'post' !== $args['name'] ) { return $args; }
    

    このpostの部分をカスタム投稿に変更しなければならないのでは?と考え

    // カスタム投稿以外の場合は無視
    if ( 'custom_post_type' !== $args['name'] ) {
    	return $args;
    }

    にしてみました。おそらく思い切り間違えてると思いますが…
    勉強不足で申し訳ないです。

    以下変更してUPしたものです。

    お手数ではありますがご指摘よろしくお願いいたします。

    php

    /**
     * Snow Monkey 投稿の一覧で、カスタム投稿のみタグを複数表示にする
     */
    add_filter(
    	'snow_monkey_get_template_part_args',
    	function( $args ) {
    		// 記事一覧カテゴリー以外のテンプレートの場合は無視
    		if ( 'template-parts/loop/entry-summary/term/term' !== $args['slug'] ) {
    			return $args;
    		}
    
    		// カスタム投稿以外の場合は無視
    		if ( 'custom_post_type' !== $args['name'] ) {
    			return $args;
    		}
    
    		// 全ての設定されたタグを返す
    		$args['vars']['_terms'] = get_the_terms( get_the_ID(), 'post_tag' );
    
    		return $args;
    	}
    );

    CSS

    /*カスタム投稿のみ最新の投稿にスラッグを複数ラベル表示*/
    
    .c-entry-summary--lessons .c-entry-summary__figure span:nth-of-type(2){
      top: 2.5em;
    }
    
    .c-entry-summary--lessons .c-entry-summary__figure span:nth-of-type(3){
      top: 5em;
    }
    
    .c-entry-summary--lessons .c-entry-summary__figure span:nth-of-type(4){
      top: 7.5em;
    }
    
    .c-entry-summary--lessons .c-entry-summary__figure span:nth-of-type(n + 5){
      display:none;
    }
    0
    いいねをした人: 居ません
15件の結果を表示中 - 1 - 15件目 (全108件中)

ドキュメント

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

ドキュメント

フォーラム

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

サポートフォーラム

よくあるご質問

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

よくあるご質問

お問い合わせ

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

お問い合わせ

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