Wordpress の URL の書き換えについて頭を悩ませようとしてきましたが、うまくいきません。
私がしたいこと:
ユーザーがさまざまなオプションから製品を構築できるカスタムプラグインを構築しています。オプションは、顧客が構築した独自の製品を参照するコードを集合的に構築します。
コードは次のようなものかもしれません140-3-WPA-ABC-2.
プラグインは、1 つの専用ページに表示されます。
http://wordpress-site/configurator/
既存のコードを持つ顧客が、次のように URL に入力できるようにしたい:
http://wordpress-site/configurator/140-3-WPA-ABC-2/
すると、プラグインは変数を取得し、それを使用して正しい製品をビルドします。
問題
それはかなり単純なはずですが、Wordpress URL書き換えルールを使用して何も動作させることができません.Wordpressクエリvarとして登録されているように見えるものを取得することさえできません.
メインのプラグイン初期化コードで次のことを試しています。
add_filter( 'query_vars', 'conf_query_vars' );
add_action( 'init', 'cong_rewrites' );
function conf_query_vars($query_vars){
$query_vars[] = 'product_code';
return $query_vars;
}
function conf_rewrites(){
add_rewrite_rule(
'configurator/([^/]+)/?$',
'index.php?product_code=$matches[1]',
'top'
);
}
次に開こうとするとhttp://wordpress-site/configurator/140-3-WPA-ABC-2/
、ページが見つからないというエラーが表示されます。query_vars をエコーすると、変数「product_code」が作成されていないことが示されているようです。
ps 書き換えキャッシュをフラッシュしようとしました。Wordpress.stackexchange.com への相互投稿についてお詫び申し上げます - しかし、プログラミングの質問はこちらの方が良いと思われますか?