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

質問編集履歴

6

テキスト修正

2019/03/11 08:30

投稿

TakahitoSugiura
TakahitoSugiura

スコア13

title CHANGED
File without changes
body CHANGED
@@ -12,7 +12,7 @@
12
12
  絞り込み検索できるようにしたいです。
13
13
  タブでカテゴリの要素を出したものと複数のカスタムフィールドが混在している少しごちゃごちゃした検索項目の出し方です。
14
14
 
15
- 1と2は実装できましたがカスタムフィールド検索対象含めるやり方がわかりません。
15
+ カスタムフィールド単体では検索にヒットすようになりましたが複数検索させるやり方がわかりません。
16
16
 
17
17
  主に以下の参考サイトより自分の知識で出来る範囲で試してみましたが駄目でした。
18
18
  [https://www.webtoolnavi.com/wordpress-search-everything/](https://www.webtoolnavi.com/wordpress-search-everything/)

5

一部テキストの修正

2019/03/11 08:30

投稿

TakahitoSugiura
TakahitoSugiura

スコア13

title CHANGED
File without changes
body CHANGED
@@ -1,5 +1,8 @@
1
1
  Wordpressの検索機能を実装しているのですが実現できず困っています。
2
2
 
3
+ 2019/03/11-17:26
4
+ 最新のソースコードに修正しました。
5
+
3
6
  ■実装したい事
4
7
  1.フリーワード検索(実装済み)
5
8
  2.クソノミー、ターム絞り込み検索(実装済み)

4

リンクテキスト修正

2019/03/11 08:26

投稿

TakahitoSugiura
TakahitoSugiura

スコア13

title CHANGED
File without changes
body CHANGED
@@ -12,11 +12,11 @@
12
12
  1と2は実装できましたがカスタムフィールドを検索対象に含めるやり方がわかりません。
13
13
 
14
14
  主に以下の参考サイトより自分の知識で出来る範囲で試してみましたが駄目でした。
15
- [リンク内容](https://www.webtoolnavi.com/wordpress-search-everything/)
15
+ [https://www.webtoolnavi.com/wordpress-search-everything/](https://www.webtoolnavi.com/wordpress-search-everything/)
16
- [リンク内容](http://wpcj.net/1363)
16
+ [http://wpcj.net/1363](http://wpcj.net/1363)
17
- [リンク内容](https://izizm.net/webizm/web-management/wordpress/1754/)
17
+ [https://izizm.net/webizm/web-management/wordpress/1754/](https://izizm.net/webizm/web-management/wordpress/1754/)
18
- [リンク内容](http://kotori-blog.com/wordpress/refinement_search/)
18
+ [http://kotori-blog.com/wordpress/refinement_search/](http://kotori-blog.com/wordpress/refinement_search/)
19
- [リンク内容](https://sheeplog.work/acf_custom_search_hudosan/)
19
+ [https://sheeplog.work/acf_custom_search_hudosan/](https://sheeplog.work/acf_custom_search_hudosan/)
20
20
 
21
21
  以下現時点でのソースです。
22
22
  ■search.php

3

最新のソースコードに修正致しました。

2019/03/11 08:24

投稿

TakahitoSugiura
TakahitoSugiura

スコア13

title CHANGED
File without changes
body CHANGED
@@ -12,11 +12,11 @@
12
12
  1と2は実装できましたがカスタムフィールドを検索対象に含めるやり方がわかりません。
13
13
 
14
14
  主に以下の参考サイトより自分の知識で出来る範囲で試してみましたが駄目でした。
15
- https://www.webtoolnavi.com/wordpress-search-everything/
15
+ [リンク内容](https://www.webtoolnavi.com/wordpress-search-everything/)
16
- http://wpcj.net/1363
16
+ [リンク内容](http://wpcj.net/1363)
17
- https://izizm.net/webizm/web-management/wordpress/1754/
17
+ [リンク内容](https://izizm.net/webizm/web-management/wordpress/1754/)
18
- http://kotori-blog.com/wordpress/refinement_search/
18
+ [リンク内容](http://kotori-blog.com/wordpress/refinement_search/)
19
- https://sheeplog.work/acf_custom_search_hudosan/
19
+ [リンク内容](https://sheeplog.work/acf_custom_search_hudosan/)
20
20
 
21
21
  以下現時点でのソースです。
22
22
  ■search.php
@@ -26,8 +26,8 @@
26
26
  $my_taxonomy = $_GET['my_taxonomy'];
27
27
  $term_slug = $_GET['term_slug'];
28
28
  $and_or = $_GET['and_or'];
29
-
30
29
  $market = $_GET['market'];
30
+ $use = $_GET['use'];
31
31
 
32
32
  if($term_slug){
33
33
  $tax_query[] = array(
@@ -35,20 +35,25 @@
35
35
  'terms'=> $term_slug,
36
36
  'include_children'=> false,
37
37
  'field'=> 'slug',
38
- 'operator'=> $and_or,
38
+ 'operator'=> $and_or
39
- 'meta_query' => array(
40
- array( 'key'=>'cf_market',
41
- 'value'=>$market[0],
42
- 'compare'=>'like',
43
- ),
44
- 'relation'=>'AND'
45
- )
46
39
  );
47
40
  }
41
+
48
42
  $args = array(
49
43
  'tax_query' => $tax_query,
50
44
  's' => $s,
51
- 'posts_per_page' => -1
45
+ 'posts_per_page' => -1,
46
+ 'meta_query' => array(
47
+ 'relation'=>'OR',
48
+ 'market_car' => array(
49
+ 'value' => '$market[0]',
50
+ 'compare' => 'LIKE',
51
+ ),
52
+ 'cat_use' => array(
53
+ 'value' => $use[0],
54
+ 'compare' => 'LIKE',
55
+ ),
56
+ )
52
57
  );
53
58
  $wp_query= null;
54
59
  $the_query = new WP_Query( $args ); ?>
@@ -101,12 +106,13 @@
101
106
  </ul>
102
107
  <!-- フォームの追加はじめ -->
103
108
  <div id="cat00">
109
+ <div class="btn_box">
104
110
  <?php
105
111
  foreach( $terms as $term ):
106
112
  $child_cats = get_terms($my_taxonomy,'hierarchical=0&hide_empty=1&parent='.$term -> term_id);
107
113
  if($child_cats):
108
114
  ?>
109
- <div class="btn_box">
115
+
110
116
  <?php
111
117
  foreach($child_cats as $child_cat):
112
118
  ?>
@@ -116,10 +122,11 @@
116
122
  ?>
117
123
  <label><input type="checkbox" name="term_slug[]" value="<?php echo $child_cat->slug; ?>"><span><?php echo $child_cat->name; ?></span></label>
118
124
  <?php endforeach;?>
119
- </div>
125
+
120
126
  <?php endif; ?>
121
127
  <?php wp_reset_postdata(); ?>
122
128
  <?php endforeach; ?>
129
+ </div>
123
130
  </div>
124
131
  <div id="cat01">
125
132
  <div class="btn_box">
@@ -131,7 +138,10 @@
131
138
  </div>
132
139
  <div id="cat02">
133
140
  <div class="btn_box">
134
- 別のカスタムフィールドの項目が並びます。
141
+ <label><input type="checkbox" name="use[]" value="use_01"><span>カスタムフィールドの項目</span></label>
142
+ <label><input type="checkbox" name="use[]" value="use_02"><span>カスタムフィールドの項目</span></label>
143
+ <label><input type="checkbox" name="use[]" value="use_03"><span>カスタムフィールドの項目</span></label>
144
+ <label><input type="checkbox" name="use[]" value="use_04"><span>カスタムフィールドの項目</span></label>
135
145
  </div>
136
146
  </div>
137
147
  <input type="hidden" name="my_taxonomy" value="<?php echo $my_taxonomy ?>">
@@ -148,23 +158,18 @@
148
158
  ```
149
159
  ■Advanced Custom Fields登録例
150
160
  ```ここに言語を入力
151
- カスタムフィールド01:cf_market
161
+ フィールド:cf_market
152
162
  market_01 : テキスト01
153
163
  market_02 : テキスト02
154
164
  market_03 : テキスト03
155
165
  market_04 : テキスト04
156
166
 
157
- カスタムフィールド02cf_example01
167
+ フィールドcf_use
158
- example01_01 : テキスト01
168
+ use_01 : テキスト01
159
- example01_02 : テキスト02
169
+ use_02 : テキスト02
160
- example01_03 : テキスト03
170
+ use_03 : テキスト03
161
- example02_04 : テキスト04
171
+ use_04 : テキスト04
162
172
 
163
- カスタムフィールド03:cf_example02
164
- example02_01 : テキスト01
165
- example02_02 : テキスト02
166
- example02_03 : テキスト03
167
- example02_04 : テキスト04
168
173
  ```
169
174
 
170
175
  不足情報等ありましたら何なりとお申し付け下さい。

2

一部テキストの修正

2019/03/11 08:23

投稿

TakahitoSugiura
TakahitoSugiura

スコア13

title CHANGED
File without changes
body CHANGED
@@ -129,7 +129,7 @@
129
129
  <label><input type="checkbox" name="market[]" value="market_04"><span>カスタムフィールドの項目</span></label>
130
130
  </div>
131
131
  </div>
132
- <div id="cat01">
132
+ <div id="cat02">
133
133
  <div class="btn_box">
134
134
  別のカスタムフィールドの項目が並びます。
135
135
  </div>

1

一部言い回しを修正しました。

2019/03/11 00:13

投稿

TakahitoSugiura
TakahitoSugiura

スコア13

title CHANGED
File without changes
body CHANGED
@@ -7,9 +7,9 @@
7
7
 
8
8
  フリーワード検索は独立していていいのですが、投稿タイプ内でカテゴリ、カスタムフィールドを全て検索対象にして、
9
9
  絞り込み検索できるようにしたいです。
10
- タブでカテゴリの要素を出したものとカスタムフィールドが複数している少しごちゃごちゃした検索項目の出し方です。
10
+ タブでカテゴリの要素を出したものと複数のカスタムフィールドが混在している少しごちゃごちゃした検索項目の出し方です。
11
11
 
12
- 1と2は実装できましたがカスタムフィールドを検索対象にるやり方がわかりません。
12
+ 1と2は実装できましたがカスタムフィールドを検索対象に含めるやり方がわかりません。
13
13
 
14
14
  主に以下の参考サイトより自分の知識で出来る範囲で試してみましたが駄目でした。
15
15
  https://www.webtoolnavi.com/wordpress-search-everything/
@@ -98,7 +98,6 @@
98
98
  <li><a href="#cat00" class="open">カテゴリ01</a></li>
99
99
  <li><a href="#cat01">カスタムフィールド01</a></li>
100
100
  <li><a href="#cat02">カスタムフィールド02</a></li>
101
- <li><a href="#cat03">カスタムフィールド03</a></li>
102
101
  </ul>
103
102
  <!-- フォームの追加はじめ -->
104
103
  <div id="cat00">
@@ -124,10 +123,17 @@
124
123
  </div>
125
124
  <div id="cat01">
126
125
  <div class="btn_box">
127
- <label><input type="checkbox" name="market[]" value="market_car"><span>カスタムフィールドの項目</span></label>
126
+ <label><input type="checkbox" name="market[]" value="market_01"><span>カスタムフィールドの項目</span></label>
128
- <label><input type="checkbox" name="market[]" value="market_car"><span>カスタムフィールドの項目</span></label>
127
+ <label><input type="checkbox" name="market[]" value="market_02"><span>カスタムフィールドの項目</span></label>
128
+ <label><input type="checkbox" name="market[]" value="market_03"><span>カスタムフィールドの項目</span></label>
129
+ <label><input type="checkbox" name="market[]" value="market_04"><span>カスタムフィールドの項目</span></label>
129
130
  </div>
130
131
  </div>
132
+ <div id="cat01">
133
+ <div class="btn_box">
134
+ 別のカスタムフィールドの項目が並びます。
135
+ </div>
136
+ </div>
131
137
  <input type="hidden" name="my_taxonomy" value="<?php echo $my_taxonomy ?>">
132
138
  <select name="and_or" id="and_or">
133
139
  <option value="AND">AND</option>
@@ -149,10 +155,10 @@
149
155
  market_04 : テキスト04
150
156
 
151
157
  カスタムフィールド02:cf_example01
152
- example_01 : テキスト01
158
+ example01_01 : テキスト01
153
- example_02 : テキスト02
159
+ example01_02 : テキスト02
154
- example_03 : テキスト03
160
+ example01_03 : テキスト03
155
- example_04 : テキスト04
161
+ example02_04 : テキスト04
156
162
 
157
163
  カスタムフィールド03:cf_example02
158
164
  example02_01 : テキスト01