$_GET[]値とはURLに含まれるパラメータです。https://wp-doctor.jp/?aaa=1 のような形で渡されます。この値をワードプレスで取得処理する方法を解説いたします。


ワードプレスで$_GET[]値を取得するには?

一般的なPHPの方法論でもワードプレスのFunctions.phpや作成されているプラグイン等のプログラムでGET値を取得できます。

https://wp-doctor.jp/?aaa=1&bbb=2

というパラメータの場合

$aaa = $_GET["aaa"];
$bbb = $_GET["bbb"];

またワードプレスの関数get_query_var を利用する方法もございます。この場合initアクションでパラメータをワードプレスに登録してから取得します。

functions.phpに下記を追加してから

add_action('init','add_get_val');
function add_get_val() { 
    global $wp; 
    $wp->add_query_var('aaa'); 
    $wp->add_query_var('bbb'); 
}

テーマのファイル等initアクション以後のPHPで下記のような形で取得可能です。

$aaa = get_query_var('aaa');
$bbb = get_query_var('bbb');

ワードプレスのGET値はワードプレスのバージョンやサーバー環境によって、スラッシュ/が加えられたりURLエンコードされたりして本来の文字列と変わる場合がございます。
この場合、元の文字列に戻すには下記のようにいたします。

$aaa = wp_unslash($_GET["aaa"]); //スラッシュを取る
$aaa = urldecode($_GET["aaa"]); //URLデコードを元に戻す

WordPress ワードプレスのテーマやプラグインの改善・バグ修正・カスタマイズのご相談・ご依頼はWPドクターまでお気軽にお送りください