1

Web サイトの SEO 最適化を行っており、URL の一部をパラメーターに変換する必要があります。URL 形式は、必要に応じて変更できます。

基本的に私はWordpressで作業しており、すべての製品で機能する単一のページを作成したいのですが、URLから特定の製品番号を取得する必要があります.

URL は次のようになります。

www.example.com/product/[product-id]-brand-name-and-some-other-stuff

舞台裏で URL を変換したい (つまり、URL は変更されません)。

www.example.com/product/?pid=[product-id]

私はhtaccessの経験があまりないので、助けていただければ幸いです。

現在の htaccess ファイルの内容は次のとおりです。

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /downloads/www.bqwatches.com/

RewriteRule ^watch/([^-]+)- watch/?bqn=$1 [L,QSA,NC]

RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /downloads/www.bqwatches.com/index.php [L]
</IfModule>

# END WordPress
4

2 に答える 2

0

更新: 製品 ID が 2 つの文字と数字で構成されているという事実を説明するためにソリューションを変更しました。

次のことを行います。

RewriteRule ^product/([a-zA-Z][a-zA-Z][0-9]+).* product/?pid=$1

何が起こっているのかを説明すると、URL の後の で始まりproduct/、その後に 2 文字と数個の数字、その他の文字が続く部分と一致します。文字と数字は要求された URL のパラメーターに入れられpid、残りは破棄されます。

を渡すとhttp://www.example.com/product/af1234-some-product、舞台裏が に変換されhttp://www.example.com/product/?pid=af1234ます。

次のようにして、任意の 2 文字の後に数字を受け入れることもできます。

RewriteRule ^product/(..[0-9]+).* product/?pid=$1

製品 ID が 以外の任意の文字である可能性がある場合は-のようにして同じ結果が得られるはずです。

RewriteRule ^product/([^-]+).* product/?pid=$1
于 2013-06-18T12:12:28.970 に答える