回答編集履歴

3

追記

2018/05/01 14:17

投稿

CHERRY
CHERRY

スコア25171

test CHANGED
@@ -22,4 +22,50 @@
22
22
 
23
23
 
24
24
 
25
+
26
+
25
- WordPress のテンプレートであれば、おそらく `get_header();` より前に記載していないと Cookie のセットはできないと思います。
27
+ ~~WordPress のテンプレートであれば、おそらく `get_header();` より前に記載していないと Cookie のセットはできないと思います。~~
28
+
29
+
30
+
31
+ ----
32
+
33
+ (追記・訂正)
34
+
35
+
36
+
37
+ WordPress のドキュメントを読んでみました。
38
+
39
+
40
+
41
+ [Plugin API/Action Reference](https://codex.wordpress.org/Plugin_API/Action_Reference) に
42
+
43
+
44
+
45
+ > send_headers : Allows customization of HTTP headers (ref array)
46
+
47
+
48
+
49
+ と書かれていますので このアクションフック内で記述するのが良さそうです。
50
+
51
+
52
+
53
+ [Plugin API/Action Reference/send headers](https://codex.wordpress.org/Plugin_API/Action_Reference/send_headers) の例を参考にして、
54
+
55
+
56
+
57
+ ```
58
+
59
+ add_action( 'send_headers', 'add_header_setcookie' );
60
+
61
+ function add_header_setcookie() {
62
+
63
+ header( 'Set-Cookie: <cookie-name>=<cookie-value>' );
64
+
65
+ }
66
+
67
+ ```
68
+
69
+
70
+
71
+ のように Cookie をセットする感じでしょうか。

2

追記

2018/05/01 14:17

投稿

CHERRY
CHERRY

スコア25171

test CHANGED
@@ -13,3 +13,13 @@
13
13
 
14
14
 
15
15
  とありますが、HTML の出力より前に この部分を記載されているのでしょうか?
16
+
17
+
18
+
19
+ ----
20
+
21
+ (追記)
22
+
23
+
24
+
25
+ WordPress のテンプレートであれば、おそらく `get_header();` より前に記載していないと Cookie のセットはできないと思います。

1

修正。

2018/05/01 12:57

投稿

CHERRY
CHERRY

スコア25171

test CHANGED
@@ -4,6 +4,12 @@
4
4
 
5
5
 
6
6
 
7
+ [setcookie](http://php.net/manual/ja/function.setcookie.php) には、
7
8
 
8
9
 
10
+
9
- [setcookie](http://php.net/manual/ja/function.setcookie.php)
11
+ > setcookie() は、その他のヘッダ情報と共に 送信するクッキーを定義します。 ほかのヘッダ情報と同様に、 クッキーは、スクリプトによる他のあらゆる出力よりも前に 送信される必要があります(これはHTTPプロトコルの制約です)。 <html> や <head> タグはもちろん 空白も含め、あらゆる出力よりも前この関数をコールするようにしなければなりません。
12
+
13
+
14
+
15
+ とありますが、HTML の出力より前に この部分を記載されているのでしょうか?