http://www.mywebsite.com/page.php?genus=A_GENUS&species=A_SPECIES&id=12345
のようなURLのリストがあります。
私は
http://www.mywebsite.com/species/A_GENUS/A_SPECIES
、恒久的に以下のURLにURLのこのフォームへの訪問をリダイレクト.htaccessファイルを書きたいと思います。
手動でデータベースに各種をリストする必要はありませんか?
私はそれを調べようとしましたが、私の頭はWordPress-Custom-Post-Typeの土地にあり、私の脳は正しく機能していません。どんな助けでも大歓迎です。
EDIT:明確化
は、現在、私の.htaccessが完全に空です。私はまったく新しいCMSとこの新しいURLフォーマットを使用するために私のウェブサイトを書き直しています。古いURL形式は存在しなくなりますが、すべての情報は引き続き使用されます。
私たちはGoogle上で非常に多くの種にランクされており、そこからの訪問者がURLフォーマットが変更されても必要な情報を表示できるようにしたいと考えています。
これらの変更はまだ行われていません(まだサンドボックス環境を新しいバージョンのサイトに使用しています)。新しいバージョンでは「ライブになる」直前にURLを変更したいと思います。
EDIT 2:新しいサイトは
新しいサイトの.htaccessの内容は、その全体がこのようになります.htaccessファイル:
Garmenの答えのための# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /sandboxfolder/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /sandboxfolder/index.php [L]
</IfModule>
# END WordPress
EDIT
RewriteEngine On
RewriteBase /sandboxfolder/
RewriteCond %{QUERY_STRING} genus=([a-zA-Z0-9-]+)&species=([a-zA-Z0-9-]+)
RewriteRule ^profile.php$ /species/%1/%2 [R=302]
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /sandboxfolder/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /sandboxfolder/index.php [L]
</IfModule>
# END WordPress
ここで正しくRewriteBaseを使用したかどうかわかりませんが、functiには表示されませんそれの有無にかかわらず。
よろしく、
あなたのhtaccessには現在何が含まれていますか?古いURLは引き続き機能しますか?新しいURLはすでに内部URLに書き換えられていますか? – Gerben
申し訳ありませんGerben、私はそれに従って私の投稿を更新します。 – dunc
新しいCMSはhtaccessを使用しませんか?古いサイトでリンクが作成された場合、url-parametersは常にその順番になっていますか? – Gerben