2012-01-25 5 views
0

古いパーマリンクを使ったブログがあります。 EG:Blog.com/2011/10/post-name.htaccess URL ReWrite Wordpress Old Permalinks

私の新しいパーマリンクはカテゴリと投稿名に基づいていますが、その前に/ blog /があります。 EG:Blog.com/blog/category-name/post-name

私のHT Accessファイルで何が必要なのですか?私はこれまでのところ、このような何かを持っているが、現在動作していない...

#RewriteRule ^[0-9]{4}/[0-9]{2}/.*$ /blog/$1 [R=permanent,L] 
+0

あなたの元のURLカテゴリを持たなかったので、入力されたURL(.htaccess内)を使用するだけで、カテゴリを持つURLにリダイレクトすることはできません。すべてのアイテムが同じカテゴリに含まれている場合や、投稿の名前からカテゴリ –

+0

申し訳ありませんが、私はそのWordpressの画像を追加するのを忘れてしまったこのリダイレクトを自動的にアップします。だからあなたはちょうど新しいパーマリンク/ブログ/ 2011/10/post-nameに行くならばあなたも/ blog/category/post-nameをリダイレクトします – ajay87

答えて

0

/blog/2011/10/post-nameはすでに(それが301であることを確認してください)あまりにも/blog/category/post-nameあなたをリダイレクトする場合は、あなたがする必要があるすべては/blog/2011/10/post-name

/2011/10/post-nameを送信することです

以下のルールをサイトのルートの.htaccessファイルに入れて、これを行うことができます。

RewriteEngine on 
RewriteBase/

#redirect blogs posts to /blog 
RewriteRule ^([0-9]{4}/[0-9]{2}/.+)$ /blog/$1 [R=301,L] 
0

これは/ blog/rootからサイトを移動することと関係があります。その場合ですか?

もしそうなら、.htaccessルールを使用する必要がないように、データベース内のURLを検索/置き換える必要があります。

のphpMyAdminでこのクエリの実行が/ブログ/パスを取り除くためにポストのGUIDのを更新します:

UPDATE wp_posts SET guid = replace(guid, 'http://www.domain.com/blog/','http://www.domain.com/'); 

をあなたはまた、ポストコンテンツのURLを変更する必要があります。

UPDATE wp_posts SET post_content = replace(post_content, 'http://www.domain.com/blog/', 'http://www.domain.com/');