サポート » 使い方全般 » 特定の親カテゴリーに属する子カテゴリーの表示の仕方

  • 解決済 tanakatanakatanaka

    (@tanakatanakatanaka)


    特定の親カテゴリーに属する
    子カテゴリーの一覧表示の仕方でうまくいかず困っております
    何卒ご教授ください

    子カテゴリーの名前を<div class=”box_text”>内に表示させ
    その子カテゴリーの記事のサムネル画像を<div class=”box_img”>内で繰り返したい
    と思っています

    親カテゴリー
     -子カテゴリーA
      –記事1 サムネル画像
      –記事2 サムネル画像
        ・
        ・ 
     -子カテゴリーB
      –記事1 サムネル画像
      –記事2 サムネル画像
        ・
        ・ 

    ・現状のphpコード

    <?php $args["parent"] = [親カテゴリーID] ; $cats = get_categories($args); foreach ($cats as $cat) { echo '<div class="box_text clear">'.$cat->cat_name.'</div>'; $posts = get_posts("category=".$cat->cat_ID."&orderby=post_modified"); foreach ($posts as $post) : setup_postdata($post); ?>
    
    <div class="box_img">
    	<a href="<?php the_permalink(); ?>"><?php the_post_thumbnail( 'small_thumbnail' ); ?></a>
    </div>
    
    <?php endforeach; }?>

    ・現状のcss

    .clear {
    	both:clear;
    }
    .box_text{
    	width:200px;
    	margin:0 70px 0 0;
    	padding:0;
    	float:left;
    	font-size:17px;
    }
    .box_img{
    	padding:17px;
    	margin:0;
    	float:left;
    	background-color:#EFECE4;
    }

    ・書き出されるソース

    <div class="box_text clear”>[子カテゴリーAの名前]</div>
    <div class="box_img">
    	<a href="[子カテゴリーA「記事1」へのリンク]”>[子カテゴリーA「記事1」サムネイル画像]</a>
    </div>
    <div class="box_img">
    	<a href="[子カテゴリーA「記事2」へのリンク]”>[子カテゴリーA「記事2」サムネイル画像]</a>
    </div>
    [以下あれば繰り返し…]
    
    <div class="box_text clear”>[子カテゴリーBの名前]</div>
    <div class="box_img">
    	<a href="[子カテゴリーB「記事1」へのリンク]”>[子カテゴリーB「記事1」サムネイル画像]</a>
    </div>
    <div class="box_img">
    	<a href="[子カテゴリーB「記事2」へのリンク]”>[子カテゴリーB「記事2」サムネイル画像]</a>
    </div>
    [以下あれば繰り返し…]

    ・表示させたいソース

    <div class="box_text clear”>[子カテゴリーAの名前]</div>
    <div class="box_img">
    	<a href="[子カテゴリーA「記事1」へのリンク]”>[子カテゴリーA「記事1」サムネイル画像]</a>
    	<a href="[子カテゴリーA「記事2」へのリンク]”>[子カテゴリーA「記事2」サムネイル画像]</a>
    </div>
    [以下あれば繰り返し…]
    
    <div class="box_text clear”>[子カテゴリーBの名前]</div>
    <div class="box_img">
    	<a href="[子カテゴリーB「記事1」へのリンク]”>[子カテゴリーB「記事1」サムネイル画像]</a>
    	<a href="[子カテゴリーB「記事2」へのリンク]”>[子カテゴリーB「記事2」サムネイル画像]</a>
    </div>
    [以下あれば繰り返し…]

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • モデレーター のむらけい (Kei Nomura)

    (@mypacecreator)

    イマイチ要望を汲み取りきれてないのですが
    divの囲み位置を変えたいならforeachの外側に持っていけばいいだけかなと。

    <div class="box_img">
       foreach ($posts as $post) : setup_postdata($post); ?>
      <a href="<?php the_permalink(); ?>"><?php the_post_thumbnail( 'small_thumbnail' ); ?></a>
    <?php endforeach;
    </div>
    }?>

    こういうことでしょうか?

    トピック投稿者 tanakatanakatanaka

    (@tanakatanakatanaka)

    ご返信ありがとうございます

    <?php $args["parent"] = [親カテゴリーID] ; $cats = get_categories($args); foreach ($cats as $cat) { echo '<div class="box_text clear">'.$cat->cat_name.'</div>'; $posts = get_posts("category=".$cat->cat_ID."&orderby=post_modified");
    <div class="box_img">
       foreach ($posts as $post) : setup_postdata($post); ?>
      <a href="<?php the_permalink(); ?>"><?php the_post_thumbnail( 'small_thumbnail' ); ?></a>
    <?php endforeach;
    </div>
    }?>

    全体で見るとこういうことでしょうか?
    確かにdivを外側にもっていけばいけそうな気がしましたが
    表示されませんでした、、

    説明わかりにくくて申し訳ないです
    子カテゴリーの繰り返しの中で、
    その子カテゴリーに属する記事をdiv内で繰りかえしさせたい
    ということです(これも説明になってないかもしれないですが、、)

    トピック投稿者 tanakatanakatanaka

    (@tanakatanakatanaka)

    以下で自己解決しました
    ありがとうございました

    <?php $args["parent"] = [親カテゴリーID] ; $cats = get_categories($args);
    foreach ($cats as $cat) {
    echo '<div class="box_text clear">'.$cat->cat_name.'</div><div class="box_img">'; $posts = get_posts("category=".$cat->cat_ID."&orderby=post_modified");
       foreach ($posts as $post) : setup_postdata($post); ?>
      <a href="<?php the_permalink(); ?>"><?php the_post_thumbnail( 'small_thumbnail' ); ?></a>
    <?php endforeach;
     echo '</div>' ;
    }
    ?>
3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「特定の親カテゴリーに属する子カテゴリーの表示の仕方」には新たに返信することはできません。