WordPressでPagenameが被ったときの挙動

WordPressにおける“Pagename”とは、パーマリンクを[categoryname/postname/]というような設定にした場合、URLで使われる大事な文字列です。毎回入力するのが面倒なので[postid]を使ったりもいるでしょうけど、CMSで使う場合にページ名が数字じゃカッコワルイですからね。

このPagename、WordPressでは完全に一意の物として扱われます。MovableType、Blogger、TypePadなんかでは被っても問題ないので、例えばログのインポート/エクスポート時にちょっとした問題になったりもします。

具体的に書くと、

http://dacelo.info/2009/10/post.html
http://dacelo.info/2007/05/post.html

MovableTypeやBloggerでは、日付やカテゴリが違えばこうしたURLが成り立つのに対し、WordPressでは「post」という名前が一意のものとして扱われるため、例えば上記のブログをログとしてインポートすると、強制的にこうなります。

http://dacelo.info/2009/10/post.html
http://dacelo.info/2007/05/post-2.html

ただこの場合、せっかくWordPressに移行したはいいけど、これまでの検索エンジンのインデックスや外部からのリンク、Sブックマーク等が無駄になってしまいます。

対処法

実はphpMyAdmin等を使って、データベースの「PAGENAME」のフィールドを強制的に[post-2]から[post]に書き換えてしまえば、すんなりとこれが成立するようになります。

http://dacelo.info/2009/10/post.html
http://dacelo.info/2007/05/post.html

広告

ただし、どちらかをWordPressで編集して保存した瞬間、そのエントリーは[post-2]に変化してしまいますのでご注意を。

About: dacelo


Leave a Reply

Your email address will not be published. Required fields are marked *