私はそれに異なるスタイルを割り当てるために私のテンプレートのそれぞれでphp変数をチェックしようとしていますが、値は消えているようです、助けてください、私はすでにこれを理解しようとして何時間も費やしました。私は私が行方不明に小さい何かがあることを知っています。
だからここにすべてがあります:
私はbにリンクし、www.b.com/?value=hとしてURIに値を渡すページaがあります。
bファイルが値を受け取り、グローバル変数の値をURIで渡されたものに変更してから、ページにリダイレクトします。
これは私のbファイルのコードです:
$server = $_SERVER["REQUEST_URI"]; $valuePos = stripos($server, "=");
$nodes = substr($server, ($valuePos + 1)); $endPos = stripos($server, "e"); $gender = substr($server, ($valuePos + 1), ($endPos));
$valuePos = stripos($nodes, "-");
$redirecturl = substr($nodes, ($valuePos + 1));
header( 'Location: '.$redirecturl );
$ genderはfunction.phpで宣言したグローバル変数です。デフォルト値を中立に設定しました。
別のテンプレートから$ genderにアクセスしようとすると、デフォルト値(ニュートラル)が表示されるだけです。助けてください
グローバルな$_SESSION
変数を使用することで、自分がしていることの大部分を単純化できると思います。
このようなことを試してください:
add_action('wp_head', 'your_session_variable' );
function your_session_variable(){
session_start();
$gender = isset($_GET['gender']) ? $_GET['gender'] : $_SESSION['gender'];
$_SESSION['gender'] = $gender;
}
テンプレートからセッション変数にアクセスするために、$_SESSION['gender']
から値を取得する前にuse session_start()
を必ず確認してください。