2

Wordpress サイトの URL にカスタム変数を入れようとしています。私はこの件について見つけられる限り読んだことがありますが、これまでのところ私の関数ページには次のものがあります:

function add_query_vars($aVars) {
$aVars[] = "mrdrct";
return $aVars;
}

// hook add_query_vars function into query_vars
add_filter('query_vars', 'add_query_vars');

そして、私のヘッダーページには次のように書かれています:

if(isset($wp_query->query_vars['mrdrct'])) {
$mVar = $wp_query->query_vars['mrdrct'];
echo "variable is $mVar <br />";
}

物事が正しく渡されているかどうかをテストするだけです。ただし、url 変数を含むリンクを使用すると (www.mydomain.com/?mrdrct=myVarable など)、テンプレートを含む静的ページに設定されている Wordpress サイトのホームページに移動しません。代わりに、最新の投稿が掲載されているページにリダイレクトされます。なぜこれが起こっているのかわかりません - 何かアイデアはありますか? うまくいけば、私はこれを十分に説明しました。

ありがとう。

4

1 に答える 1

0

WP がクエリ文字列 ( ?URL の後) を検出すると、書き換えルールを使用して一致する投稿を表示しようとします。一致する投稿がない場合、404 エラーが表示されます。404.php ファイルがないと思われるため、WP はデフォルトの index.php を表示しています (詳細については、Wordpress テンプレート階層を参照してください)。

あなたが達成したいことを100%確信しているわけではありませんが、$wp_query->query_vars['mrdrct']が設定されているときにクエリを変更することを検討する必要があることをお勧めします。まだ慣れていない場合は、開始するのに適した場所としてWP Codexを参照してください。query_posts()

于 2011-11-07T15:34:06.383 に答える