質問編集履歴
1
詰まったところが変更したので修正
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
プラグイン「ACF」で日付を判別して
|
1
|
+
プラグイン「ACF」で日付を判別して表示・非表示を切り替えたい
|
test
CHANGED
@@ -2,7 +2,8 @@
|
|
2
2
|
WordPressでイベント情報を載せています。
|
3
3
|
イベント一覧ページに表示する際、
|
4
4
|
ACFのラジオボックスで「参加募集中」「残りわずか」「満員御礼」を配置
|
5
|
-
下記のコードでイベント情報を拾っていま
|
5
|
+
下記のコードでイベント情報を拾っていました。
|
6
|
+
|
6
7
|
```php
|
7
8
|
$args = array(
|
8
9
|
'post_type' => 'events',
|
@@ -13,13 +14,51 @@
|
|
13
14
|
$query = new WP_Query($args);
|
14
15
|
```
|
15
16
|
|
16
|
-
以前までは手作業で「満員御礼」にチェックを入れて、イベント情報には非表示になるようにしていたのですが、ここを自動で行え
|
17
|
+
以前までは手作業で「満員御礼」にチェックを入れて、イベント情報には非表示になるようにしていたのですが、ここを自動で行えるよう修正したいと思ってデイトピッカーを使用して日付でソートするようにコードを修正しました。
|
18
|
+
```php
|
19
|
+
$today = date('Ymd');
|
20
|
+
$args = array(
|
21
|
+
'post_type' => 'events',
|
22
|
+
'post_status' => 'publish',
|
23
|
+
'meta_query' => array(
|
24
|
+
'relation' => 'AND',
|
25
|
+
array(
|
26
|
+
'key' => 'カスタムフィールドキー',
|
27
|
+
'value' => array('参加募集中', '残りわずか'),
|
28
|
+
),
|
29
|
+
array(
|
30
|
+
'key' => '終了日設定', // ACFで所得する公開日
|
31
|
+
'value' => $today,
|
32
|
+
'compare' => '>=', // value(今日)とkey(公開日)を比較して未来の場合のみ表示
|
33
|
+
),
|
34
|
+
),
|
35
|
+
'tax_query' => array(
|
36
|
+
'relation' => 'AND',
|
37
|
+
array(
|
38
|
+
'taxonomy' => 'event-category',
|
39
|
+
'field' => 'slug',
|
40
|
+
'terms' => 'information'
|
41
|
+
)
|
42
|
+
)
|
43
|
+
);
|
44
|
+
$query = new WP_Query($args);
|
45
|
+
```
|
46
|
+
ただAND検索にすると日付を指定したくないもの(常時開催)や、昔のイベントは日付登録していなくて、日付登録していないものも非表示になってしまいます。
|
47
|
+
これをOR検索にすると日付が過ぎていても「募集中」「残りわずか」に設定されているものは表示されてしまうので、満員御礼にチェックをつける手間が発生します。
|
48
|
+
|
17
49
|
### 実現したいこと
|
18
50
|
|
51
|
+
昔のイベントや、常時開催しているイベントには日付登録作業をしないで下記を実現したいです。
|
52
|
+
・終了日を過ぎたものは表示しない
|
53
|
+
・「満員御礼」になっているものも表示しない
|
54
|
+
|
19
|
-
掲載終了日をACFのデイトピッカーなどで設定すると、終了日を過ぎたとき自動的に「満員御礼」にラジオボタンが移動する
|
55
|
+
・(出来るならば)掲載終了日をACFのデイトピッカーなどで設定すると、終了日を過ぎたとき自動的に「満員御礼」にラジオボタンが移動する
|
20
56
|
ということを行いたいです。
|
21
57
|
|
22
|
-
|
58
|
+
取得した投稿数を表示することも下記で行っているので、一旦全て取得して日付で比較して非表示ということもできない(というかしたくない)です。
|
59
|
+
```ここに言語を入力
|
60
|
+
new WP_Query($args)
|
61
|
+
```
|
23
62
|
|
24
63
|
|
25
64
|
### 発生している問題・エラーメッセージ
|