質問するログイン新規登録

回答編集履歴

2

add_shortcodeが抜けてた

2016/02/13 04:46

投稿

amaranthine
amaranthine

スコア501

answer CHANGED
@@ -44,6 +44,7 @@
44
44
 
45
45
  return $postsNumber;
46
46
  }
47
+ add_shortcode('postsNumber', 'getPostsNumber');
47
48
  ```
48
49
 
49
50
 

1

コメントでの質問に回答

2016/02/13 04:46

投稿

amaranthine
amaranthine

スコア501

answer CHANGED
@@ -9,4 +9,43 @@
9
9
  return $postsNumber->category_count;
10
10
  ```
11
11
 
12
- とかですかね。
12
+ とかですかね。
13
+
14
+ ---
15
+ 子カテゴリ数も全部取得:サンプルコード
16
+
17
+ テストしてないですが、こんな感じです
18
+ ```php
19
+ function getPostsNumber($atts) {
20
+ extract(shortcode_atts(array(
21
+ 'name' => '',
22
+ ), $atts));
23
+
24
+ //対象カテゴリのターム情報を取得
25
+ $target_cat_term = get_term_by('name', $name, 'category');
26
+
27
+ //親カテゴリのカウント数
28
+ $target_cat_count = $target_cat_term->count;
29
+
30
+ //子カテゴリ配列を取得
31
+ $child_cat_lists = $catlist = get_term_children($target_cat_term->term_id, 'category');
32
+
33
+ //子カテゴリカウント総数用変数の初期化
34
+ $child_cat_count = 0;
35
+
36
+ //子カテゴリ配列をそれぞれカウント足す
37
+ foreach($child_cat_lists as $child_term_id) {
38
+ $each_cat_term = get_term_by('id', $child_term_id, 'category');
39
+ $child_cat_count = $child_cat_count + $each_cat_term->count;
40
+ }
41
+
42
+ //親カテゴリカウントと子カテゴリカウント総数を足す
43
+ $postsNumber = $target_cat_count + $child_cat_count;
44
+
45
+ return $postsNumber;
46
+ }
47
+ ```
48
+
49
+
50
+
51
+ 新しい質問を投稿するのがteratail的には正しそうですが(--;