私のWordPressサイトでwfcartを使用していますが、何らかの理由で特定のページでWordPressがセッションを中断しますWordPress 3でセッションを有効にする方法があるかどうか疑問に思いますか
あなたが手動でグローバルにセッションを有効にする必要があるなら、あなたのfunctions.phpでこれを使ってください(私は例として手動でセッション変数を設定するための行を含めました、必須ではありません):
add_action('init', 'session_manager');
function session_manager() {
if (!session_id()) {
session_start();
}
$_SESSION['foo'] = 'bar';
}
そして、あなたが手動でイベントのセッションをクリアしたいなら(ログアウトのように):
add_action('wp_logout', 'session_logout');
function session_logout() {
session_destroy();
}
Somaticの回答に加えて、セッションを誤って設定した場合は、セッションによってスケーリングが妨げられることがあります。
特に、サイトが複数のサーバーにまたがる場合は、必ずpeclの組み込みMemcached保存ハンドラーの1つ、またはSQLベースのセッションハンドラーを使用してください。そして、あなたがphpで書かれたSQLハンドラを選ぶならば、あなたのアプリケーションがAjaxを含むならば、行ロックを使うことを忘れないでください。
そうしないでファイルシステムハンドラにこだわると、どのサーバーがエンドユーザーにヒットしたかに基づいてセッションを失うことになります。