私はWordpressでカスタムURLを使用しようとしています。WordpressのカスタムURLとGET
http://example.com/home代わりのhttp://example.com?page_id=home
しかし、どのように、私は今、GET機能を使用する必要がありますか?
$page_id = $_GET['page_id'];
if($page_id == 'home') include 'home.php';
私はWordpressでカスタムURLを使用しようとしています。WordpressのカスタムURLとGET
http://example.com/home代わりのhttp://example.com?page_id=home
しかし、どのように、私は今、GET機能を使用する必要がありますか?
$page_id = $_GET['page_id'];
if($page_id == 'home') include 'home.php';
$_GET
は機能ではありません。使用しないでください。クエリ文字列から解析された値が含まれていますが、その値はありません。
代わりに$_SERVER['REQUEST_URI']
を解析してください。
このURLのように使用することができますhttp://localhost/wordpress/2012/01/hello-world/?g=1
。このURLのprint_r($_GET)
の結果はArray ([g] => 1)
です。
ただし、カスタムURLを使用する場合は、htaccessファイルを変更する必要があります。これらのアクションのためのいくつかのプラグインがあります
「WordPressの方法は」「クエリ変数」としてpage_id
を登録しget_query_var
を使用することです。
クエリ変数を登録するには、query_vars
フィルタを使用できます。あなたのプラグインやテーマのfunction.php
add_filter('query_vars', 'register_my_query_vars');
function register_my_query_vars($qvars){
//Add these query variables - do not overwrite the $qvars array
$qvars[] = 'page_id';
return $qvars;
}
に次のように入れてその後、あなたは(質問で、家庭)、その値を取得するためにget_query_var('page_id')
を使用することができるはずです。