php-URLリダイレクトと変換/(スラッシュ)と。 (ドット)から-(ハイフン)
WordPressサイトのURLを{-code-1}<{-code-1}code> (slash) to
-<{-code-1}code> (Hyphen) and
.htm<{-code-1}code> to
-htm<{-code-1}code>.<{-code-1}p>
WordPressのwp_postテーブルにカスタムURL構造をインポートしています。<{- code - 1} p>
既存のpost_name形式はWordPressではサポートされていません。<{- code - 1} p>
例:<{- code - 1} p>
これは既存のURL形式です:<{- code - 1} p>
https:{-code-1}{-code-1}www.example.com{-code-1}latest-news{-code-1}my-url-string{-code-1}click123.htm <{-code-1}code><{-code-1}pre>
次に、このURLを次のように変換します。<{- code - 1} p>\n
https:{-code-1}{-code-1}www.example.com{-code-1}latest-news{-code-1}my-url-string-click123-htm <{-code-1}code><{-code-1}pre>
したがって、以前にインデックス付けされたURLは、この新しい形式にリダイレクトできます。<{- code - 1} p>
答え :
解決:
あなたの例から、私は次のことを仮定します:
- 最後のパスセグメントの前に置き換えるスラッシュは1つだけです。
- URLパスの最後に(
-htm
.htm
が1つだけあります。 /lastest-news/
はURLパスの先頭で修正されていますmy-url-string
は可変ですが、単一のパスセグメントです。/click123
は可変です(基本的に.htm
前のファイルベース名)が、それ自体にドットは含まれていません。
その場合、WordPressフロントコントローラーの前.htaccess
ファイルの先頭で以下を使用できます。 NS。# BEGIN WordPress
セクションの前:
# Redirect custom URL structure RewriteRule ^(latest-news/[^/]+)/([w-]+).htm$ /$1-$2-htm [R=302,L]
上記は、次の形式のURLをリダイレクトします。
/latest-news/<path-segment>/<file>.htm
に
/latest-news/<path-segment>-<file>-htm
$1
および$2
RewriteRule
パターンからキャプチャされたURLの一部が含まれています。例えば:
$1
latest-news/<page-segment>
が含まれています$2
<file>
が含まれています。
RewriteEngine On
ディレクティブを繰り返す必要はありません。これは、WordPressセクションの後半ですでに発生しているためです。
これは現在302(一時的な)リダイレクトであることに注意してください。潜在的なキャッシュの問題を回避するために、これが意図したとおりに機能することを確認したら、301(永続的な)リダイレクトにのみ変更します(それが意図されている場合)。
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。