質問: Wordpressのカスタムmod_rewrite - totalnoob? 私は私のWordPressのインストールのためのカスタムmod_rewriteルールを作ろうとしている、私はすでに私のページ構造のために私が保持したいカスタムルールを持っている。 The new custom rule i'd like to make is whenever there's a get variable like: www.mysite.com/?*profile*=**username** I want to make it look like: www.mysite.com/**username** これは私の現在の.htaccessファイルです: ``` # BEGIN WordPress RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress ``` 私はphp.netと一般的にmodリライティングについての多くのチュートリアルを見てきましたが、特にWordPressのために、すべてがちょうど私の頭の上にまっすぐに行く、私はそれを理解していません。 誰かが私に本当に感謝してこれでいくつかの進歩を得るためにいくつかの助けを与えることができる場合、私は本当にmod_rewriteの周りに頭を浮かべたい。 私は新しいRewriteRuleを作成する必要があると仮定していますが、それは私が得る限りです。 ありがとう フランク
回答: 達成したいことを達成することは、難しいことではありません。 .htaccessはURLのUSERNAME部分が実際にユーザー名かどうかを知る方法がないので、着信要求を解析するために追加のPHPファイルが必要です。 私が言及したPHPファイルは、データベースからユーザテーブルを読み込み、$ _GET ['profile']をエントリと比較し、一致すると/ profile = USERNAMEに書き換えます 一致するものがなければ、単にindex.phpに渡します。 しかし、ここでははるかに簡単な解決策があります。これはあなたが望むものをたくさん保存します。 ``` RewriteRule ^profile/([^/]+)$ ?profile=$1 [L] ``` What this does is rewrite from /profile/*username* to /?profile=*username* それはあなたが探しているものではありませんが、実装する方がはるかに簡単です。このルールは.htaccessファイルの `RewriteRule ^ index \ .php $ - [L]` の直下に移動します。 ご不明な点がございましたら、ここで何が起こっているのかをお気軽にお聞かせください。