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

質問編集履歴

2

誤字修正

2019/07/24 02:09

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -49,7 +49,7 @@
49
49
 
50
50
  ### 追記(7/24 11:01)
51
51
 
52
- 下記コードに修正したら思うどおりに動きましたのですが、、、
52
+ 下記コードに修正したら思うどおりに動たのですが、、、
53
53
 
54
54
  ```
55
55
  function twpp_change_sort_order( $query ) {

1

コード修正など

2019/07/24 02:09

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -43,4 +43,95 @@
43
43
  // タイトルなど
44
44
 
45
45
  <?php endwhile; endif; ?>
46
+ ```
47
+
48
+
49
+
50
+ ### 追記(7/24 11:01)
51
+
52
+ 下記コードに修正したら思うどおりに動きましたのですが、、、
53
+
54
+ ```
55
+ function twpp_change_sort_order( $query ) {
56
+ if(is_admin() || ! $query->is_main_query()){
57
+ return;
58
+ }
59
+ if($query->is_tax('seminar-category')) {
60
+ $query->set('posts_per_page', 5);
61
+ $query->set('meta_query',
62
+ array(
63
+ 'relation' => 'AND',
64
+ 'my_custom_filed_date' => array(
65
+ 'key' => '開催日'
66
+ ),
67
+ 'my_custom_filed_hour' => array(
68
+ 'key' => '開始_時',
69
+ ),
70
+ 'my_custom_filed_min' => array(
71
+ 'key' => '開始_分',
72
+ ),
73
+ )
74
+ );
75
+ $query->set('orderby',
76
+ array(
77
+ 'my_custom_filed_date' => 'ASC',
78
+ 'my_custom_filed_hour'=>'ASC',
79
+ 'my_custom_filed_min'=>'ASC',
80
+ )
81
+ );
82
+ }
83
+ }
84
+ add_action('pre_get_posts', 'twpp_change_sort_order');
85
+ ```
86
+
87
+ ここにさらに、「開催日時より後の記事(今が7/24 13:00の場合、7/24 13:10以降の開催日の記事)は出力しない」という処理を追加したいので下記のようにコードを変えたら、開催日以降の記事は出力されないのですが、開始時間と分の条件が効きませんでした。
88
+
89
+ どうすればいいでしょうか。
90
+
91
+ ```
92
+ function twpp_change_sort_order( $query ) {
93
+ if(is_admin() || ! $query->is_main_query()){
94
+ return;
95
+ }
96
+ if($query->is_tax('seminar-category')) {
97
+ $query->set('posts_per_page', 5);
98
+ $query->set('meta_query',
99
+ array(
100
+ 'relation' => 'AND',
101
+ 'my_custom_filed_date' => array(
102
+ 'key' => '開催日'
103
+ ),
104
+ 'my_custom_filed_hour' => array(
105
+ 'key' => '開始_時',
106
+ ),
107
+ 'my_custom_filed_min' => array(
108
+ 'key' => '開始_分',
109
+ ),
110
+ array(
111
+ 'key' => '開催日',
112
+ 'value' => date_i18n('Ymd'),
113
+ 'compare' => '<=',
114
+ array(
115
+ 'key' => '開始_時',
116
+ 'value' => date_i18n('G'),
117
+ 'compare' => '<=',
118
+ array(
119
+ 'key' => '開始_分',
120
+ 'value' => date_i18n('i'),
121
+ 'compare' => '<='
122
+ ),
123
+ ),
124
+ ),
125
+ )
126
+ );
127
+ $query->set('orderby',
128
+ array(
129
+ 'my_custom_filed_date' => 'ASC',
130
+ 'my_custom_filed_hour'=>'ASC',
131
+ 'my_custom_filed_min'=>'ASC',
132
+ )
133
+ );
134
+ }
135
+ }
136
+ add_action('pre_get_posts', 'twpp_change_sort_order');
46
137
  ```