質問: 投稿、ページ、カテゴリ、画像のurlに301個のリダイレクトを作成しますか? 私はこれがここで尋ねるには多すぎるかもしれないので、もしそうなら、学ぶために別の場所を私に言ってください。リダイレクトの支援私はよく開発されていないサイトを片付け、サブディレクトリからwordpressを移行しています。私はリダイレクトと正規表現のロジスティクスに頭を包むことに何時間も費やしました。私はそれを把握していると思いますが、私はこれを正しく行っていることの確認とベストプラクティスに関するアドバイスをいただければ幸いです。ハウツーの例がある良いチュートリアルを誰かが知っているなら、私もそれを感謝します。誰かがこのための 本当に 単純なプラグインを知っているなら、私は非常に感謝するでしょう。私はredirectionsプラグインを見てきましたが、非常に混乱します(頭痛!)いずれにせよ、以下の私の考え(ソースの後に=>次にtarget)が、私がリダイレクトの指示とスクリーンショット、そして私が探した他のチュートリアルから集めたものです。私はそれらを直接.htaccessファイルに入れるか、またはリダイレクトまたは他のプラグインを使うかにかかわらず、それらが適用可能であると確信していますか?だから、ここで私が達成しようとしていることと私はそれが行われる必要があると思う方法です: wordpressをサブディレクトリからルートに移動するには: /wp /(.*)=> /$1 現在ルート内のサブディレクトリ内にあるすべてのページについて、削除したり、1つのトップレベルページにまとめたりします。 /products-directory /(.*)=>/products-top-level-page /about-directory /(.*)=>/about-top- level-page /services-directory /(.*)=>/services-top-level-page 特定のパターンに一致するトップレベルのページがたくさんある場合は、それらを特定のカテゴリに分類します。ファイル名はすべて同じ2つの単語で始まります:same-word-variation-variation.htmlそしてそれらに既存のファイル名を残してもらいたい - 私のパーマリンクを `.html`で終わらせるように設定すれば、これはうまくいきます。 、 私は信じている: /same-word(。*)=> /newcategory/$1 パーマリンクが `.html`で終わっていない場合、どうやってルールを作成しますか? (私が見たと思う!は「not」の文字ですが、ここでの使い方がわかりません - それはそうです): /same-word(。*)=> /newcategory/$1!\.html そして、上記のように特定のページを識別してリダイレクトしたら、残りすべてを削除し(ゴミ)、ユーザーをホームページに送信します(またはランダムな投稿)。 だから、ここで2つの質問: 「上記のように既にリダイレクトされたファイルを除くすべてのものに対して、これを実行する」というルールを作成する方法 今後作成する新しいページや投稿にそのルールが適用されないようにするにはどうすればよいですか。 1つのアイデアは、削除すると404ページが見つからないということです。そのため、404ページ自体のルールを作成する必要がありますか。それが私がやりたいことですか? 私が言ったように、このサイトは(クライアントが適切なアーキテクチャ、seoなどに関係なく単に「ページを開く」ように指示するように指示されて)ひどく開発されています - それは事実上ランキングも外部リンクもありません。心配する必要はありませんが、seoと適切な開発の観点から最善のアプローチを理解したいと思います。 また、既存の画像などをwp-contentディレクトリに移動するか、それらを既存のサブディレクトリに置いておくべきですか。私の傾向は、本当に「クリーンな掃除」をすることです - 厄介なように思われるすべてを取り除きます、しかし、これがそれが価値があるより多くの仕事になるかどうか私はわかりません... すべてのガイダンスを事前に感謝します。
回答: あるパーマリンク構造から別の構造へ変更するためのプラグインがありますが、これはあなたのニーズには十分ではないと確信しています。いくつかの.htaccess書き換え規則を使用する必要があります。私はあなたにあなたの必要性のためにいくつかの例を挙げることを試みる(それらがすべて正しいかどうかわからない)。これらの行をすべて、サーバーのルートにある ".htaccess"というファイルに含めます。ワードプレスのルールの上にそれを出します:# begin wordpress <ifmodule mod_rewrite.c> rewriteengine on # your rules start here. keep the following lines that has been produced by wordpress rewritebase / rewriterule wp/(.*)$ /$1 [r=301] rewriterule /products-directory/(.*)$ /products-top-level-page [r=301] rewriterule /about-directory/(.*)$ /about-top-level-page [r=301] rewriterule /services-directory/$ /services-top-level-page [r=301] rewriterule /same-word(.*)$ /newcategory/$1 [r=301] フラグ[r = 301]はクライアントブラウザまたは検索エンジンに、それが恒久的なリダイレクトであることを伝えます。あなたはおそらくあなたのワードプレスデータベース内のすべてのパーマリンクを更新したいでしょう。データベース内の文字列の更新に関する 記事を書きました 。残念ながら、私はまだ投稿を翻訳していません。しかし、クエリは明確であるべきです、そうでなければ単にmysqlのドキュメントを使用してください。