特定のアーカイブページのみ、記事一覧レイアウトを変更したい

0
いいねをした人: 居ません
  • このトピックには6件の返信、3人の参加者があり、最後にゆきんこにより2ヶ月前に更新されました。
7件の投稿を表示中 - 1 - 7件目 (全7件中)
  • 投稿者
    投稿
  • #108428
    ゆきんこ
    参加者
    4

    【お使いの Snow Monkey のバージョン】17.2.3
    【お使いの Snow Monkey Blocks のバージョン】16.0.3
    【お使いの Snow Monkey Editor のバージョン】8.0.1
    【お使いのブラウザ】Chrome
    【当該サイトのURL】後ほど必要な場合掲載させていただきます。

    いつも大変お世話になっております。
    以下、よろしくお願いいたします。

    ### 実現したいこと

    複数あるカテゴリのうち、特定のカテゴリのアーカイブページのみ、記事一覧レイアウトを変更したい

    ### 発生している問題

    外観>カスタマイズ>デザイン>基本デザイン設定 の記事一覧レイアウトが共通で適用されており、(正しい動きだと思いますが)個別に変更ができない

    ### 試したこと

    方法が分からず、現時点では設定箇所を探したのみです

    大変恐縮ですが、引き続き、宜しくお願い致します。

    0
    いいねをした人: 居ません
    #108433
    Olein_jp
    参加者
    464

    アーカイブ一覧レイアウトは「アーカイブ」で一律設定がデフォルトだったと思います。
    カテゴリーアーカイブ別にカスタマイザにて設定できるのは、アクセントカラーとアイキャッチ画像だけだったかな、と。

    なので、コードで解決できそうな気がします。こちらのようなコードで、任意のカテゴリーの時だけレイアウトを指定してあげることで管理できるかと思います。

    add_filter(
    	'inc2734_wp_view_controller_layout',
    	function( $layout ) {
    		if ( is_category( 'category-slug' ) ) {
    			$layout = 'one-column';
    		}
    		return $layout;
    	}
    );

    $layout には任意のレイアウトを指定してあげてください。上ではワンカラムになってます。

    0
    いいねをした人: 居ません
    #108460
    キタジマ タカシ
    参加者
    1696

    オレインさんが書かれているのはページレイアウトの変更方法ですね。記事一覧レイアウトということなので一覧部分用テンプレートパーツの _entries_layout を書き換える形になると思います。下記が参考になると思うので見てみてください。

    // template-parts/archive/entry/content/content.php のテンプレート引数を書き換える
    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/archive/entry/content/content',
    	function( $args ) {
    		// カテゴリー news のときだけ
    		if ( is_category( 'news' ) ) {
    			// 記事一覧レイアウトを text に変更
    			$args['vars']['_entries_layout'] = 'text';
    		}
    		return $args;
    	}
    );
    0
    いいねをした人: 居ません
    #108465
    Olein_jp
    参加者
    464

    あっ…、失礼しました…!

    1
    いいねをした人:
    #108695
    ゆきんこ
    参加者
    4

    オレインさん、キタジマさん、ご返信ありがとうございます。
    過去記事を確認させていただきました!

    add_filter(
    ‘snow_monkey_get_template_part_args’,
    function( $args ) {
    if ( ‘template-parts/archive/entry/content/content’ === $args[‘slug’] ) {
    if ( is_home() || is_category() || ‘news’ === $args[‘name’] ) {
    $args[‘vars’][‘_entries_layout’] = ‘text’;
    } else {
    $args[‘vars’][‘_entries_layout’] = ‘simple’;
    }
    }
    return $args;
    }
    );

    「news」というスラッグのカテゴリのアーカイブページのみ記事一覧レイアウトをテキストにしたく、それ以外のカテゴリではリッチメディアとしたいのですが、その場合はどちらをどのように書き換えれば宜しかったでしょうか。

    自分で記事を参考に書き換えてみたのですが、おそらく何かが間違っているのか全てのカテゴリに反映されてしまいます。

    ※当然ですが不具合ではなく私が理解していないからだと思います

    大変恐縮ですが、引き続き、宜しくお願い致します。

    0
    いいねをした人: 居ません
    #108696
    Olein_jp
    参加者
    464

    別途コードを書くこともなく、キタジマさんが書かれているコードで実現できそうな気がしますがいかがでしょう?

    0
    いいねをした人: 居ません
    #108814
    ゆきんこ
    参加者
    4

    オレインさん、こちらご返信をいただき、誠にありがとうございます。
    キタジマさんが別の投稿へのリンクを貼ってくださったその下にコードを記載くださっていたのを見落としており、別投稿の記載を参考にしてしまっておりました!

    おっしゃる通りでこちらのコードで実現ができました、大変失礼いたしました。

    オレインさん、キタジマさん、ありがとうございます!
    とても助かりました。

    1
    いいねをした人:
7件の投稿を表示中 - 1 - 7件目 (全7件中)
  • トピック「特定のアーカイブページのみ、記事一覧レイアウトを変更したい」には新しい返信をつけることはできません。

ドキュメント

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

ドキュメント

フォーラム

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

サポートフォーラム

よくあるご質問

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

よくあるご質問

お問い合わせ

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

お問い合わせ