1

私の質問:WP_Rewriteを使用して、カスタムクエリ文字列(例:mysite.com/?tid=1)を含むURLをアドレスに配置すると、mysite.com/1になるようにすることは可能ですか。

このクエリは2番目のデータベースを参照し、通常のWordpress構造とは関係ありません。その情報を取得し、インデックスページの一部を入力します。

現在、WP_Rewriteを使用して逆を行うことができました。http://www.zacharybrady.com/text/wordpress/1/にアクセスすると、wordpressはそれをhttp://www.zacharybrady.com/text/wordpress/?tid=1と解釈します。

私の完全なコード:

/*REWRITING*/
function add_rewrite_rules() {

add_rewrite_rule('([0-9]+)','index.php?tid=$matches[1]','top');

}
add_action( 'init', 'add_rewrite_rules' );






/*QUERY TAGS*/
function tid_register_rewrite_tag() {
    add_rewrite_tag( '%tid%', '([0-9]+)');
}
add_action( 'init', 'tid_register_rewrite_tag');

私はすでに達成したこととこの質問の目標の両方を実行できる必要があります。その結果、ユーザーにはクエリ文字列が表示されなくなります。

私はたくさんの研究をしましたが、これに対する答えは私を逃れているようです。

4

1 に答える 1

0

だから私は一種の答えを持っていますが、それは優雅とはほど遠いです.

SUBMIT で、私が使用しているフォームは、コードを含む test.php の PHP スクリプトに送信します。

$id = $_GET['tid'];
$url='http://www.zacharybrady.com/text/wordpress/'.$id;
echo "<script>window.location = '$url'</script>";

そして最後に、これは書き換えをシミュレートします。誰かがより優雅な方法を持っているなら、私に知らせてください。

于 2012-08-01T20:28:14.007 に答える