質問編集履歴

2

進捗報告

2021/06/01 08:05

投稿

masa_oji
masa_oji

スコア8

test CHANGED
File without changes
test CHANGED
@@ -24,10 +24,14 @@
24
24
 
25
25
  $cat_idの部分をtermに出来れば解決かと思うのですが、上手くいっておりません。
26
26
 
27
+
28
+
29
+ 06/01、サポートに問い合わせたところ、カスタム投稿を想定した作りになっていないということでした。
30
+
31
+
32
+
27
33
  引き続き、お力を貸していただければと思います。
28
34
 
29
-
30
-
31
35
  よろしくおねがいします。
32
36
 
33
37
 

1

進捗報告

2021/06/01 08:05

投稿

masa_oji
masa_oji

スコア8

test CHANGED
File without changes
test CHANGED
@@ -16,33 +16,35 @@
16
16
 
17
17
  ### 該当コード
18
18
 
19
+ 05/31現在、JSを条件分岐させて、functions.phpのactionをもう一つ作ることでworkの一覧ページでは解決することができました。
20
+
19
- 以下コ箇所該当の部分かと思ですが、
21
+ 未だ、タム一覧ページではPOSTもの出てしま状況です
20
-
22
+
23
+
24
+
21
- postとworkを判別して読み込む投稿を切り替える方法子テーマの記述の仕方わかりません。
25
+ $cat_idの部分をtermに出来れば解決か思うの、上手くいっておりません。
22
-
23
-
24
-
26
+
25
- どのように書けばよろしでしょうか?
27
+ 引き続き、お力を貸していただと思ます。
26
-
28
+
29
+
30
+
27
- よろしくおいします。
31
+ よろしくおねがいします。
28
-
29
-
30
-
32
+
33
+
34
+
35
+
36
+
31
- テーマfunctions.php
37
+ テーマfunctions.php
32
38
 
33
39
  ```php
34
40
 
35
- require get_template_directory() . '/includes/bootstrap-wp-navwalker.php';
36
-
37
-
38
-
39
- add_action( 'wp_ajax_nopriv_load-filter', 'prefix_load_cat_posts' );
41
+ add_action( 'wp_ajax_nopriv_load-filter-work', 'prefix_load_cat_posts_work' );
40
-
42
+
41
- add_action( 'wp_ajax_load-filter', 'prefix_load_cat_posts' );
43
+ add_action( 'wp_ajax_load-filter-work', 'prefix_load_cat_posts_work' );
42
-
44
+
43
- function prefix_load_cat_posts () {
45
+ function prefix_load_cat_posts_work () {
44
-
46
+
45
- $cat_id = $_POST['cat'];
47
+ $cat_id = $_POST['term'];
46
48
 
47
49
  $paged = $_POST['paged'];
48
50
 
@@ -52,21 +54,23 @@
52
54
 
53
55
 
54
56
 
55
- $search = array(
57
+ $search = array(
58
+
56
-
59
+ 'post_type' => 'work',
60
+
57
- 'paged' => $paged,
61
+ 'paged' => $paged,
58
-
62
+
59
- 'posts_per_page' => get_option('posts_per_page'),
63
+ 'posts_per_page' => get_option('posts_per_page'),
60
-
64
+
61
- 'order' => 'DESC',
65
+ 'order' => 'DESC',
62
-
66
+
63
- 'post_status' => array('publish')
67
+ 'post_status' => array('publish')
64
-
68
+
65
- );
69
+ );
66
-
67
-
68
-
70
+
71
+
72
+
69
- if($cat_id) $search['cat'] = $cat_id;
73
+ if($cat_id) $search['term'] = $cat_id;
70
74
 
71
75
 
72
76
 
@@ -190,4 +194,132 @@
190
194
 
191
195
  }
192
196
 
197
+
198
+
193
199
  ```
200
+
201
+
202
+
203
+ ▼ 子テーマfooter.php
204
+
205
+ ```JS
206
+
207
+ <?php if(is_post_type_archive('work') || is_tax('cat_work') ) : ?>
208
+
209
+ var canLoad = true
210
+
211
+
212
+
213
+ function page_ajax_get_work(){
214
+
215
+ var page = jQuery('.paged').last().attr('data-paged') || 2;
216
+
217
+ var cat = <?php echo $cat_id; ?>;
218
+
219
+ var ajaxurl = '<?php echo admin_url( 'admin-ajax.php' ); ?>';
220
+
221
+
222
+
223
+ canLoad = false
224
+
225
+
226
+
227
+ jQuery.ajax({
228
+
229
+ type: 'POST',
230
+
231
+ url: ajaxurl,
232
+
233
+ data: {"action": "load-filter-work", 'term': cat, paged:page },
234
+
235
+ success: function(response) {
236
+
237
+ if(response.length > 100){
238
+
239
+ var id = page - 1;
240
+
241
+ id.toString();
242
+
243
+ jQuery("#infiniscroll").html(jQuery("#infiniscroll").html() + response);
244
+
245
+ } else {
246
+
247
+ jQuery("#pagerlink").html("最終ページ")
248
+
249
+ jQuery("#pagerbutton").attr("disabled", "disabled")
250
+
251
+ }
252
+
253
+
254
+
255
+ setTimeout(function(){ canLoad = true }, 2000)
256
+
257
+ }
258
+
259
+ })
260
+
261
+ }
262
+
263
+
264
+
265
+ <?php else : ?>
266
+
267
+ var canLoad = true
268
+
269
+
270
+
271
+ function page_ajax_get(){
272
+
273
+ var page = jQuery('.paged').last().attr('data-paged') || 2;
274
+
275
+ var cat = <?php echo $cat_id; ?>;
276
+
277
+ var ajaxurl = '<?php echo admin_url( 'admin-ajax.php' ); ?>';
278
+
279
+
280
+
281
+ canLoad = false
282
+
283
+
284
+
285
+ jQuery.ajax({
286
+
287
+ type: 'POST',
288
+
289
+ url: ajaxurl,
290
+
291
+ data: {"action": "load-filter", cat: cat, paged:page },
292
+
293
+ success: function(response) {
294
+
295
+ if(response.length > 100){
296
+
297
+ var id = page - 1;
298
+
299
+ id.toString();
300
+
301
+ jQuery("#infiniscroll").html(jQuery("#infiniscroll").html() + response);
302
+
303
+ } else {
304
+
305
+ jQuery("#pagerlink").html("最終ページ")
306
+
307
+ jQuery("#pagerbutton").attr("disabled", "disabled")
308
+
309
+ }
310
+
311
+
312
+
313
+ setTimeout(function(){ canLoad = true }, 2000)
314
+
315
+ }
316
+
317
+ })
318
+
319
+ }
320
+
321
+ <?php endif; ?>
322
+
323
+
324
+
325
+ ```