Published on

WordPressでさくっとcookieを使う

目次

WordPressでcookieを手軽に保存する方法です。

使用する場面は
ちょっと一時的に記事情報保存してごにょごにょしたいときだったり、そんなときに

オプションに値を持たせる方法もありますが、ユーザーごとに分けたいときや頻繁に値が変わるときはcookieが良さそうです。
実装も簡単です。

coolieを保存する

setcookieを使うだけ。

これだけで保存できます。

function.php
setcookie("TestCookie", $value);

実際にはpostして値を保存したいーなんてケースが多いと思います。

function.php
function cookie(){
if(isset($_POST['hoge'])):
$value = $_POST['hoge'];
setcookie("TestCookie", $value);
endif;
}

これだけで保存自体は簡単にできますね。

期間を指定するときや表示するとき

//時間指定するときは値のあとに期間を指定します
setcookie("TestCookie", $value, time()+3600);//一週間
//表示
echo $_COOKIE["TestCookie"];

cookieを削除する

削除するときはdelecookieといった関数ではないので注意

現在時刻より前にする必要があります。

//削除
setcookie("TestCookie", $value, time()-3600);

cookieを複数保存する

また、cookieはブラウザに無限に保存できるわけではないので数に注意が必要です

そんなときは配列に。

//配列
setcookie("TestCookie['one']", $value, time()+3600);
setcookie("TestCookie['two']", $value, time()+3600);
if(isset($_COOKIE['TestCookie']);):
$cookie = $_COOKIE['TestCookie'];
foreach($cookie as $name => $value){
echo $name;
echo $value;
}
endif;

jsライブラリを使わずに一通りのことはできそうですね。

WordPressほんと便利。