-
投稿者投稿
-
2023年12月7日 7:51 AM #134165
【お使いの Snow Monkey のバージョン】25.2.6
【お使いの Snow Monkey Blocks のバージョン】20.3.5
【お使いの Snow Monkey Editor のバージョン】9.3.2
【お使いのブラウザ】chrome(OSX)
【当該サイトのURL】
投稿一覧:https://x01.piemx.me/%e7%b5%84%e5%90%88%e4%b8%80%e8%a6%a7/
カテゴリー:https://x01.piemx.me/category/%e4%ba%8c%e4%b8%81%e7%9b%ae%ef%bc%88%e5%8c%97%ef%bc%89/### 実現したいこと
全回ホームのテキスト2で実現して頂いた件と同様に、投稿一覧(ホームページ設定)とカテゴリーの並び順と抜粋の文字数、表示件数の制御をしたいです
### 発生している問題
全回のコードを元に書き換えてみましたが、反映されませんでした。
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'] ) { // レイアウトが「パネル」のとき if ( 'panel' === $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いいねをした人: 居ません2023年12月8日 2:15 PM #134221snow_monkey_get_template_part_args_template-parts/widget/snow-monkey-posts
フィルターフックはウィジェットとブロックにしか効きません。一覧ページの記事一覧部分は、ウィジェットでもブロックでもないため、別のフックで書き換える必要があります。下記試してみてください。
add_filter( 'snow_monkey_get_template_part_args_template-parts/common/entries/entries', function( $args ) { // 一覧のとき if ( 'archive' === $args['vars']['_context'] ) { // レイアウトが「パネル」のとき if ( 'panel' === $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いいねをした人: 居ません2023年12月8日 8:01 PM #134237フィルターフックがちがってたのですね
一杯あって覚えるのが大変ですね希望どおり並びました ありがとうございます
♥ 0いいねをした人: 居ません2023年12月8日 9:01 PM #134244Snow Monkey の独自フックは、なるべく統一された方法で、アップデート時のメンテナンスを最小限に抑えられたら良いなということで用意しているものなので、無理に覚えずに WordPress 本来の方法でやっても良いと思います。今回の場合なら
pre_get_posts
フィルターフックでクエリを改変し、子テーマからのテンプレートの上書きで表示を書き換え、excerpt_length
フィルターフックで抜粋の文字数を調整という感じでしょうか。解決済みということで、トピックのクローズをお願いします!
♥ 0いいねをした人: 居ません -
投稿者投稿
- トピック「記事一覧、カテゴリー一覧での抜粋と並び順制御」には新しい返信をつけることはできません。