-
投稿者投稿
-
2025年5月8日 10:18 AM #145109
【お使いの Snow Monkey のバージョン】 バージョン: 28.0.0
【お使いの Snow Monkey Blocks のバージョン】バージョン 23.0.2
【お使いの Snow Monkey Editor のバージョン】 バージョン 10.1.2
【お使いのブラウザ】Google Chrome### 実現したいこと
投稿の一覧で、各投稿のカテゴリーを複数表示にしたのちカテゴリーの順番を希望通りにしたい。
### 試したこと
投稿のカテゴリーを複数表示させるため以下のURLを参考にPHPとCSSを書き込んだ
さらに、カテゴリーの順番を変えるためCSSに「order」を使い、なんとか順番が変わらないか試みた⇩
.c-entry-summary__term.c-entry-summary__term–category-17.c-entry-summary__term–category-slug-1 {
order: 1;
}
.c-entry-summary__term.c-entry-summary__term–category-9.c-entry-summary__term–category-slug-2 {
order: 2;
}
.c-entry-summary__term.c-entry-summary__term–category-8.c-entry-summary__term–category-slug-4 {
order: 3;
}上記の内容では何も変化がなかった。
という流れになります。どうすれば順番を変えることができるのでしょうか…m(_ _)m
よろしくお願いいたします。♥ 0Who liked: No user2025年5月8日 1:19 PM #145116フレックスボックスじゃないから
order
が効かないのかもしれません。PHP で、$args['vars']['_terms']
に格納した順番のまま画面に出力されるので、そこで調整すると良いかもです。下記のように書き換えてみるとどうでしょうか?
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; } // 全ての設定されたカテゴリーを返す $raw_terms = get_the_terms( get_the_ID(), 'category' ); // 並び順指定用の配列を用意 $sorted_terms = array( 'category-17', // 1番目に表示したいタームのスラッグ 'category-slug-2', // 2番目に表示したいタームのスラッグ 'category-slug-4', // 3番目に表示したいタームのスラッグ ); // 並び順を反映させた配列を生成 foreach ( $raw_terms as $raw_term ) { $sorted_terms[ $raw_term->slug ] = $raw_term; } $args['vars']['_terms'] = $sorted_terms; return $args; } );
♥ 0Who liked: No user -
投稿者投稿
- このトピックに返信するにはログインが必要です。