回答編集履歴
2
勘違いしてたので修正
test
CHANGED
@@ -4,11 +4,53 @@
|
|
4
4
|
|
5
5
|
|
6
6
|
|
7
|
-
原因は、
|
7
|
+
原因は、
|
8
|
+
|
9
|
+
(1)$argsの書き方がまず違います。
|
10
|
+
|
11
|
+
```PHP
|
12
|
+
|
13
|
+
$args = array(
|
14
|
+
|
15
|
+
'post_type' => $post_type_slug, // 投稿タイプの指定
|
16
|
+
|
17
|
+
$taxonomy_slug => $term_slug , // タクソノミーからタームを指定
|
18
|
+
|
19
|
+
'posts_per_page' => -1, // タームに紐づく投稿を全てを表示
|
20
|
+
|
21
|
+
);
|
22
|
+
|
23
|
+
```
|
24
|
+
|
25
|
+
こんな書き方はどこに書いてあったのでしょうか?
|
26
|
+
|
27
|
+
[関数リファレンス/WP Query](https://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/WP_Query#.E3.82.BF.E3.82.AF.E3.82.BD.E3.83.8E.E3.83.9F.E3.83.BC.E3.81.AE.E3.83.91.E3.83.A9.E3.83.A1.E3.83.BC.E3.82.BF)
|
28
|
+
|
29
|
+
を見て考えてみてください。
|
8
30
|
|
9
31
|
|
10
32
|
|
33
|
+
(2)書き方が正しくても、これでは、URLからタームごとの記事一覧は取得できません。
|
34
|
+
|
35
|
+
出来るとするならば、
|
36
|
+
|
37
|
+
```PHP
|
38
|
+
|
39
|
+
$taxonomy_name = get_query_var('taxonomy');
|
40
|
+
|
41
|
+
$term_var = get_query_var( 'term' );
|
42
|
+
|
11
|
-
|
43
|
+
```
|
44
|
+
|
45
|
+
で、URLから指定されているタクソノミーとtermを受け取り、上記WP_Queryの書き方に従って書けばできます。
|
46
|
+
|
47
|
+
|
48
|
+
|
49
|
+
が、WordPressがURLから判断して、タクソノミーとタームを考慮し、データベースから自動的にデータを取ってきてくれる機能があります。なぜそれを使わないのでしょか?
|
50
|
+
|
51
|
+
|
52
|
+
|
53
|
+
普通にtaxonomy-brandcat.phpに(WP_Query()とか要らないので)
|
12
54
|
|
13
55
|
```PHP
|
14
56
|
|
@@ -24,7 +66,7 @@
|
|
24
66
|
|
25
67
|
|
26
68
|
|
27
|
-
|
69
|
+
以下訂正前の文章です。
|
28
70
|
|
29
71
|
[タクソノミーテンプレート](http://wpdocs.osdn.jp/%E3%82%BF%E3%82%AF%E3%82%BD%E3%83%8E%E3%83%9F%E3%83%BC%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88)
|
30
72
|
|
1
修正
test
CHANGED
@@ -1,3 +1,31 @@
|
|
1
|
+
訂正
|
2
|
+
|
3
|
+
taxonomy-brandcat.phpのテンプレートファイルを作ったのに、なぜタームごとの記事一覧が取得できないのかという事ですよね。勘違いしていました。
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
原因は、WordPressがURLから判断して、タクソノミーとタームを考慮し、自動でとってくるメインクエリのデータを捨てて、自分でデータを取ってくるサブクエリを使われているからです。
|
8
|
+
|
9
|
+
|
10
|
+
|
11
|
+
普通に
|
12
|
+
|
13
|
+
```PHP
|
14
|
+
|
15
|
+
if( have_posts() ):while( have_posts() ):the_post();
|
16
|
+
|
17
|
+
//(略)
|
18
|
+
|
19
|
+
endwhile;endif;wp_reset_postdata();
|
20
|
+
|
21
|
+
```
|
22
|
+
|
23
|
+
を使って、表示させてみてください。
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
|
28
|
+
|
1
29
|
[タクソノミーテンプレート](http://wpdocs.osdn.jp/%E3%82%BF%E3%82%AF%E3%82%BD%E3%83%8E%E3%83%9F%E3%83%BC%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88)
|
2
30
|
|
3
31
|
|