WordPressで$_SESSIONが使えない
ページ遷移のログを簡易的に$_SESSIONに保存して使いまわそうとしたら動作しなかったので調査。  環境: CentOS 6.5, nginx 1.6.2, php-fpm 5.4.33  initにフックしてsession_startしても、各ページでsession_idするたびに新たに新しいIDになって引き継げない。   function hoge_init() {     if (!session_id()) {         session_start();     } } add_action('init', 'hoge_init');  調べてみるとPHPの設定でsession.cookie_pathの設定が「/tmp」になってた。 # less /etc/php.ini   session.cookie_path = /tmp  cookie_path はクッキーを保存するパス(URI)。一致したアクセスのみクッキーを使えるようになる。  cookie_pathを直したら動いた。  他のサーバーをみると「/」だったので、session.save_pathと勘違いして書き換えてたみたい。設定した覚えがないのでどっかのバージョンは/tmpに設定されるかも。  ちなみにsession.save_pathの設定は/etc/php-fpm.d/www.confに記載してある。        ちょっと深追いしてWordPressと_SESSIONの関係を調査。  WordPressはグローバル変数として_SESSIONを扱っていない。   Php session not working in wordpress page template - Stack Overflow   Global Variables | WordPress Codex  var_dump($GLOBALS); するとWordPressが生成したグローバル変数が出力される。     ということで$_SESSIONを使うのはやめて、 update_user_meta を使うことにした。     < Related P...