質問編集履歴
2
説明を追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -2,22 +2,66 @@
|
|
2
2
|
カスタムフィールドを一覧表示させた際に複数の値がカンマで区切ったまま表示されるのを
|
3
3
|
別々に表示させる事は可能でしょうか?
|
4
4
|
|
5
|
+
|
6
|
+
single.php
|
7
|
+
```ここに言語を入力
|
8
|
+
<?php $url = site_url(); // url取得
|
9
|
+
$list = get_meta_values('hoge'); // カスタムフィールド取得
|
5
|
-
|
10
|
+
shuffle($list);
|
11
|
+
foreach ( $list as $key=>$value) {
|
12
|
+
$list_name[$key] = $value->name;
|
13
|
+
echo '<li><a href='. $url . '/meta?key=hoge&value=' . $value->name . '>' . $value->name . '</a></li>';
|
14
|
+
} ?>
|
6
15
|
```
|
7
|
-
|
16
|
+
上記の$value->nameをダンプすると下記が表示されます。
|
17
|
+
```ここに言語を入力
|
18
|
+
array(8) {
|
19
|
+
[0]=> object(stdClass)#2971 (2) { ["name"]=> string(42) "柴犬,チワワ,ポメラニアン,パグ" ["count"]=> string(1) "1" }
|
20
|
+
[1]=> object(stdClass)#2970 (2) { ["name"]=> string(46) "柴犬,ボクサー,パグ,プードル,ゴールデンレトリバー" ["count"]=> string(1) "1" }
|
21
|
+
[2]=> object(stdClass)#2915 (2) { ["name"]=> string(9) "チワワ" ["count"]=> string(1) "1" }
|
22
|
+
[3]=> object(stdClass)#2927 (2) { ["name"]=> string(35) "チワワ,ポメラニアン,柴犬" ["count"]=> string(1) "1" }
|
23
|
+
[4]=> object(stdClass)#2923 (2) { ["name"]=> string(9) "ダックスフント" ["count"]=> string(1) "1" }
|
24
|
+
[5]=> object(stdClass)#2921 (2) { ["name"]=> string(6) "ブルドック" ["count"]=> string(1) "1" }
|
25
|
+
[6]=> object(stdClass)#2920 (2) { ["name"]=> string(6) "シーズー" ["count"]=> string(1) "1" }
|
26
|
+
[7]=> object(stdClass)#2919 (2) { ["name"]=> string(6) "ブルドック" ["count"]=> string(1) "1" }
|
27
|
+
} array(0) { }
|
28
|
+
```
|
29
|
+
このまま<li>タグで表示すると下記のようになりカンマで区切られた値がそのまま表示されます。
|
30
|
+
|
31
|
+
###問題のリストタグ
|
32
|
+
```
|
8
|
-
<li>ポメラニアン</li>
|
33
|
+
<li>柴犬,チワワ,ポメラニアン,パグ</li>
|
34
|
+
<li>柴犬,ボクサー,パグ,プードル,ゴールデンレトリバー</li>
|
9
35
|
<li>ダックスフント,ミニチュアダックスフント</li>
|
36
|
+
<li>チワワ</li>
|
37
|
+
<li>チワワ,ポメラニアン,柴犬</li>
|
38
|
+
<li>ダックスフント</li>
|
39
|
+
<li>ブルドック</li>
|
10
|
-
<li>
|
40
|
+
<li>シーズー</li>
|
41
|
+
<liブルドック</li>
|
11
|
-
|
42
|
+
```
|
43
|
+
###希望しているリストタグ
|
44
|
+
```
|
12
45
|
<li>柴犬</li>
|
46
|
+
<li>チワワ</li>
|
13
47
|
<li>ポメラニアン</li>
|
48
|
+
<li>パグ</li>
|
49
|
+
<li>ボクサー</li>
|
50
|
+
<li>パグ</li>
|
51
|
+
<li>プードル</li>
|
52
|
+
<li>ゴールデンレトリバー</li>
|
14
53
|
<li>ダックスフント</li>
|
15
54
|
<li>ミニチュアダックスフント</li>
|
16
|
-
<li>
|
55
|
+
<li>チワワ</li>
|
56
|
+
<li>ブルドック</li>
|
17
|
-
<li>
|
57
|
+
<li>シーズー</li>
|
18
58
|
```
|
59
|
+
重複した値をカウントしつつ、ひとつひとつリスト表示させる。
|
60
|
+
カスタムフィールドの値が一つなら問題は有りませんが値が複数だと上記のように表示させる事ができず
|
61
|
+
困っています。
|
62
|
+
|
19
63
|
###該当のソースコード
|
20
|
-
function.php
|
64
|
+
function.php(get_meta_values)
|
21
65
|
```ここに言語を入力
|
22
66
|
function get_meta_values( $key = '', $type = 'post', $status = '' ) {
|
23
67
|
global $wpdb;
|
@@ -35,18 +79,9 @@
|
|
35
79
|
return $r;
|
36
80
|
}
|
37
81
|
```
|
38
|
-
single.php
|
39
|
-
```ここに言語を入力
|
40
|
-
<?php $url = site_url(); // url取得
|
41
|
-
$list = get_meta_values('hoge'); // カスタムフィールド取得
|
42
|
-
shuffle($list);
|
43
|
-
foreach ( $list as $key=>$value) {
|
44
|
-
$list_name[$key] = $value->name;
|
45
|
-
echo '<li><a href='. $url . '/meta?key=hoge&value=' . $value->name . '>' . $value->name . '</a></li>';
|
46
|
-
} ?>
|
47
|
-
```
|
48
82
|
|
49
83
|
|
50
84
|
|
85
|
+
|
51
86
|
###補足情報(言語/FW/ツール等のバージョンなど)
|
52
87
|
WordPress 4.6.1 / Advanced Custom Fields 4.4.8 / PHP5.3.8 / MySQL5.5.16
|
1
tagの追加
title
CHANGED
File without changes
|
body
CHANGED
File without changes
|