質問編集履歴

2

回答を受けてやってことを追記しました。

2017/02/19 12:38

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -77,3 +77,91 @@
77
77
 
78
78
 
79
79
  ちょっとわかりにくい質問で申し訳ないですが、良い方法を教えてください!
80
+
81
+
82
+
83
+
84
+
85
+ <追記:回答を受けてできたもの>
86
+
87
+ ```php
88
+
89
+ コード
90
+
91
+ <?php
92
+
93
+ $cat_id = get_query_var('cat');
94
+
95
+ $cat_data = get_term( $cat_id, 'category' );
96
+
97
+ ?>
98
+
99
+ <?PHP if($cat_data ->parent==0) : //第1階層のとき
100
+
101
+ $categories = get_categories('child_of='.$cat_id); //対象のカテゴリの子カテゴリを取得
102
+
103
+ foreach($categories as $category) : //子カテゴリの数だけ回す
104
+
105
+ $cat_url = get_category_link( $category->term_id ); //カテゴリのURL
106
+
107
+ $cat_name = $category->cat_name; //カテゴリ名
108
+
109
+ $cat_count = $category->count; //カテゴリ件数
110
+
111
+
112
+
113
+ //画像付き記事を1個だけ取得する
114
+
115
+ $args = array(
116
+
117
+ 'cat' => $category->cat_ID,
118
+
119
+ 'posts_per_page' => 1,
120
+
121
+ 'meta_query' => array(
122
+
123
+ array(
124
+
125
+ 'key' => '_thumbnail_id',
126
+
127
+ 'compare' => 'EXISTS'
128
+
129
+ ),
130
+
131
+ )
132
+
133
+ );
134
+
135
+ $query = new WP_Query($args);
136
+
137
+ $image_url[0] = get_template_directory_uri().'/img/noimage.jpg';
138
+
139
+ if ($query->have_posts()) :
140
+
141
+ while ($query->have_posts()) : $query->the_post();
142
+
143
+ if (has_post_thumbnail() ) {
144
+
145
+ $image_url = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'large');
146
+
147
+ }
148
+
149
+ endwhile;
150
+
151
+ endif;
152
+
153
+ wp_reset_postdata();
154
+
155
+ ?>
156
+
157
+ <a href="<?php echo $cat_url; ?>"><img src = "<?php echo $image_url[0]; ?>" alt = "<?php echo $cat_name; ?>"><p><?php echo $cat_name; ?></p></a>
158
+
159
+ <p>記事は<?php echo $cat_count; ?>個です</p>
160
+
161
+ <?php endforeach; ?>
162
+
163
+
164
+
165
+ ```
166
+
167
+ こんな感じで目的の動作ができました。

1

ニンジンを追加。

2017/02/19 12:38

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -52,7 +52,7 @@
52
52
 
53
53
  このとき、「野菜」カテゴリのリンクをクリックした際に表示されるページにには
54
54
 
55
- 「なすび」と「レタス」を表示したいのです。
55
+ 「なすび」と「レタス」と「ニンジン」を表示したいのです。
56
56
 
57
57
  そして、それぞれのカテゴリのサムネイル画像として、含有記事のサムネイル(どれかは問いませんが、例えば長茄子と玉レタスの画像)を取得したいと思っています。
58
58