タクソノミーページのレイアウト崩れ

0
いいねをした人: 居ません
  • このトピックには13件の返信、2人の参加者があり、最後にM Tにより4年、 8ヶ月前に更新されました。
14件の投稿を表示中 - 1 - 14件目 (全14件中)
  • 投稿者
    投稿
  • #20070
    M T
    閲覧者
    8

    【お使いの Snow Monkey のバージョン】v7.2
    いつもお世話になっております。
    どの時点からは不明ですが、自動的にできるタクソノミー(Custom Post Type UIで作成)ページのレイアウトが崩れていました。
    タクソノミーはカスタム投稿タイプで使用。この投稿タイプでは、絞り込み検索プラグインを使用し、通常検索とは別のオリジナルのテンプレを読み込むようにしています。
    絞り込み検索用プラグインを使った時の検索結果は、search.phpで条件分岐させ、オリジナルのテンプレート(以下の①②)で表示しています。
    子テーマ>templates>view>①archive.php
    子テーマ>template-parts>loop>②entry-summary-post.php
    ①を別の名前にして配置 ①の中で読み込んでいる②も変更(classを追加)し、検索結果一覧のレイアウト等をカスタマイズしています。
    ▼表示が崩れたページ(タクソノミー:age)
    https://ohitorisama.site/age/40s/
    ▼同様のテンプレを使った表示が崩れていないページ
    こちら

    以前、Ver6に更新した時、自分でテンプレートを修正して崩れた形と同様ですが、今回は自分でテンプレは修正していません。この時は、何度かやりとりをさせていただいたのですが、テンプレを修正しなくても正常に表示されたので、結局そのままにしました。
    ▼その際のトピック

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

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

    はタグアーカイブ、

    は検索結果ページなので、違うテンプレートが使われている気がします。タグアーカイブ用のテンプレートをカスタマイズしてもいいのですが、レイアウトの崩れの原因は一覧部分のレイアウトが「シンプル」ではなく「リッチメディア」になっていることなので、他のアーカイブページも「シンプル」になっていいのであれば、カスタマイザーから設定するのが簡単だと思います。

    下記を参考に、記事一覧レイアウトを「シンプル」にしてみてください。

    0
    いいねをした人: 居ません
    #20195
    M T
    閲覧者
    8

    ご返信ありがとうございます。
    カスタマイザーを開いてみたのですが、アーカイブページはシンプルになっていました。
    オリジナルのテンプレを使っていることが影響しているのでしょうか。
    (アイキャッチ画像がないので、オリジナルのテンプレートに似ています)

    以下のページは、オリジナルのテンプレートを読んでいます。

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

    あれ、となると子テーマのテンプレートのバージョンが低いのかな…。

    えっと、ちょっと確認してみてほしいのですが、仮に「子テーマ>templates>view>①archive.php」のコードを全部消すと、

    のページの中身は無くなりますか? 無くなるなら正しくテンプレートの読み込みはされていると思うので、何らかコードの修正をしなければいけないのかもしれません。無くならないのなら、別なビューテンプレートが読み込まれているということになると思いますので、ちょっと調査が必要です。

    とりあえず↑を調べてみてもらって、あと、「子テーマ>templates>view>①archive.php」のコードをまるごと共有してもらえますでしょうか?

    0
    いいねをした人: 居ません
    #20217
    M T
    閲覧者
    8

    お手数をおかけします。

    子テーマ>templates>view>①archive.phpを消してみると、

    以下の検索プラグインを使った検索結果の中身は消えますが、

    以下ページはそのままでした。

    ①archive.php=search-form0.php(ファイル名変更)の内容

    <?php
    /**
     * @package snow-monkey
     * @author inc2734
     * @license GPL-2.0+
     */
    
    use Framework\Helper;
    ?>
    <div class="c-entry">
    	<header class="c-entry__header">
    		<h1 class="c-entry__title"><?php echo esc_html( Helper::get_page_title_from_breadcrumbs() ); ?></h1>
    	</header>
    <div style="text-align : center"><strong><?php echo $wp_query->found_posts; ?>件の記事が該当しました。</strong></div></br>
    <?php
    			// 検索結果ソート
     if(function_exists('feas_sort_menu') and  $_GET['fe_form_no'] == '0'){ ?>
      <div class="return_link_sp"><a href="https://ohitorisama.site/members-contribution/">検索画面へ</a> </div>
     <div class="container_form0"> <div class="item1_form0"><div id="feas-sort-menu">
        <?php feas_sort_menu(); ?></div> </div>
        <div class="item2_form0"><a href="https://ohitorisama.site/members-contribution/">検索画面へ</a> </div> </div></br>
    <?php } ?>
    
    	<div class="c-entry__body">
    		<div class="c-entry__content p-entry-content">
    			<div class="p-archive">
    				<ul class="c-entries c-entries--<?php echo esc_attr( get_theme_mod( 'archive-layout' ) ); ?>">
    					<?php while ( have_posts() ) : ?>
    						<?php the_post(); ?>
    						<li class="c-entries__item">
    							<?php Helper::get_template_part( 'template-parts/loop/entry-summary-contribution', get_post_type() ); ?>
    						</li>
    					<?php endwhile; ?>
    				</ul>
    			</div>
    		</div>
    
    		<?php Helper::get_template_part( 'template-parts/archive/pagination' ); ?>
    	</div>
    </div>
    0
    いいねをした人: 居ません
    #20220
    M T
    閲覧者
    8

    ちなみに、子テーマ
    template-parts>loop>②entry-summary-post.php → entry-summary-contribution.php(名称変更)
    の内容は以下です。

    <?php
    /**
     * @package snow-monkey
     * @author inc2734
     * @license GPL-2.0+
     */
    
    use Framework\Helper;
    
    $terms = get_the_terms( get_the_ID(), 'category' );
    $_term = null;
    if ( $terms && ! is_wp_error( $terms ) ) {
    	$_term  = $terms[0];
    }
    
    // When loaded by widget, $widget_layout is exist.
    if ( isset( $widget_layout ) ) {
    	$layout = $widget_layout;
    } else {
    	$layout = get_theme_mod( 'archive-layout' );
    }
    ?>
    <a href="<?php the_permalink(); ?>">
    	<section class="c-entry-summary c-entry-summary--category-<?php echo esc_attr( $_term ? $_term->term_id : 0 ); ?>">
    		<div class="c-entry-summary__body form0_layaout1">
    			<header class="c-entry-summary__header">
    				<h2 class="c-entry-summary__title">
    					<?php
    					if ( 'rich-media' === $layout ) {
    						Helper::the_title_trimed();
    					} else {
    						the_title();
    					}
    					?>
    				</h2>
    			</header>
    			<div class="c-entry-summary__content form0_text1">
    				<?php
    				ob_start();
    				the_excerpt();
    				echo esc_html( wp_strip_all_tags( ob_get_clean() ) );
    				?>
    			</div>
    
    		</div>
    	</section>
    </a>
    0
    いいねをした人: 居ません
    #20291
    キタジマ タカシ
    参加者
    2233

    以下の検索プラグインを使った検索結果の中身は消えますが、

    archive.php=search-form0.php(ファイル名変更)の内容

    ということは、検索結果は「archive.php」ではなく、「search-form0.php」で表示している、ということですよね。そして、40台のページは検索結果ではなくタグアーカイブなので、「archive.php」が使用されているはずです。

    つまり、40台のページを修正するには、「search-form0.php」ではなく「archive.php」を修正する必要があります。子テーマの中には「archive.php」は入っていますでしょうか?

    0
    いいねをした人: 居ません
    #20296
    M T
    閲覧者
    8

    子テーマにarchive.phpは入っていません。
    archive.phpが使われているのですね。

    カスタム投稿タイプ(contribution)の検索結果同様のレイアウトを、タクソノミー(age、adress、genderほか)に適用したいのですが、archive.phpを変更するとそれ以外にも影響してしまうのではないでしょうか。
    条件分岐等が必要でしょうか。
    色々とややこしくなって恐縮です。

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

    タクソノミー(age、adress、genderほか)に適用したいのですが、archive.phpを変更するとそれ以外にも影響してしまうのではないでしょうか。

    そうですね。全てのアーカイブページではなく、特定のタクソノミーだけ「シンプル」のレイアウトになったほうが良い、ということですね?

    特定のタクソノミーに限定するのであれば、カスタマイザーからの設定ではなくコードを書く必要があります。ちょっと書いてみようと思うのですが、ちょっとイマイチどういう構成になっているのかよくわからないので、メールなどで子テーマを一式共有してもらうことはできますでしょうか?

    0
    いいねをした人: 居ません
    #20414
    M T
    閲覧者
    8

    お手数をおかけして申し訳ございません。
    slackの方で子テーマファイルを送らせていただきました。

    それと、カスタマイザーのアーカイブページ設定について、以下のことに気づきました。
    (これは、このままでも問題ありませんが、今回のことに関係あるかもしれません。)
    ●カスタム投稿ではなく、固定ページのカテゴリーページについてです。
    カスタマイザーのアーカイブページ設定を開くと、「シンプル」になっているのに、実際は「リッチメディア」になっていました。

    ●通常の検索結果は、問題なく「シンプル」で表示されます。

    ●以下もカスタマイザーでは「シンプル」になっています。

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

    My Snow Monkey に下記のコードを貼り付けてもらうとどうでしょうか?

    /**
     * age, adress, gender のタクソノミーアーカイブのときは、一覧レイアウトを「simple」に固定
     */
    add_filter(
    	'snow_monkey_template_part_render',
    	function( $html, $slug ) {
    		if ( 'template-parts/archive/entry/content/content' === $slug ) {
    			if ( is_tax( 'age' ) || is_tax( 'adress' ) || is_tax( 'gender' ) ) {
    				$html = str_replace( 'c-entries--rich-media', 'c-entries--simple', $html );
    			}
    		}
    		return $html;
    	},
    	10,
    	2
    );
    0
    いいねをした人: 居ません
    #20584
    M T
    閲覧者
    8

    ありがとうございます。一覧が正常な形で表示されました!
    あと、度々すみません、タクソノミーではなく、カスタム投稿の一覧が崩れたままなのですが、修正可能でしょうか。
    カスタム投稿「contribution」で以下が崩れた状態です。

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

    良かったです!

    if ( is_tax( 'age' ) || is_tax( 'adress' ) || is_tax( 'gender' ) ) {
    

    の部分を、

    if ( is_tax( 'age' ) || is_tax( 'adress' ) || is_tax( 'gender' ) || is_post_type_archive( 'contribution' ) ) {
    

    にするとどうでしょうか?

    0
    いいねをした人: 居ません
    #20593
    M T
    閲覧者
    8

    バッチリです!
    たいへんお手数おかけしました。ありがとうございました。
    トピック閉じさせていただきます。

    0
    いいねをした人: 居ません
14件の投稿を表示中 - 1 - 14件目 (全14件中)
  • トピック「タクソノミーページのレイアウト崩れ」には新しい返信をつけることはできません。

ドキュメント

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

ドキュメント

フォーラム

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

サポートフォーラム

よくあるご質問

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

よくあるご質問

お問い合わせ

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

お問い合わせ

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