WordPressブログのサーバー移動(引っ越し)について。 エクスポート インポート

ふと、今はどんなオープンソースCMSがシェア上位なのか調べてみた。
WordPressすごいですねー。
現在はほとんど使ってませんが、2005~2006年くらいにちょこちょこいじっていました。
そのときよりも遥かにシェアが伸びていて驚き。
オープンソースCMSに限ると、その中でシェアが約7割もある。
しかも、WordPressが世界のWEBサイトに占める割合は
18.9%
というデータもあった。 (出典: W3Techs.com, 25 July 2013)
だから、最近WordPressが使われているサイトでのハッキング⇒データ流出事件をよく聞くのかと納得。
ということで、何か書く事ないかと考えたところ、
WordPressを引っ越し(サーバー移動)
みたいなことは多いのではないかと。
便利な事に最近のバージョンはインポート、エクスポートツールが充実していて、とても楽になっていました。
(WorPress 3以降?)
でも、「ツール」のエクスポート機能でXMLファイルを吐き出して、引っ越し先でインポート機能でさきほどのXMLファイルを取り込んでも
写真がうまいこと表示されない
なんて事があるのでは?と推測。
て、便利なツールがあるのかもしれませんが。。。
意外にこういう初歩的なことでつまづくこともあるかと。
しかも、今はスマホで写真付で投稿したり、いろいろな機種でとったデジカメの写真を投稿したりと
何かと写真付投稿は多いですから。
ちなみに「元のサーバーの写真フォルダへのパスと引っ越し先のサーバーでのパスの指定」
が間違っていない事はまずはじめにたしかめてくださいね。
デフォルトでは下記のパスに画像を保存していることが多いようなので、
例:http://新ドメイン(ドメイン変わってなければ同じ)/wp-content/uploads/ここ!
uploads下位に前のサーバーの写真フォルダをそのままコピー
そして、XMLをインポート。。
写真が表示されない!
単純に新ドメインになってパスが変わって、投稿で指定された画像のアドレス(URL)が古いサイトのままになっている場合は
URL置き換える
だけで解決。
プラグイン 「Search Regex」
などの置き換えソフトを使えば一気にURLの置換ができます。
さて、それでもダメなときは、、、
画像ファイルの拡張子の小文字 jpg、大文字 JPG
 がどうなっているか確認してみてください。
Windowsでは拡張子の大文字小文字は区別しません。
ですが、WEBサーバーは大文字・小文字を別のものとして区別します
ですので、スマホでアップロードしたとき、デジカメのSDメモリからPCにコピーしたときなどに拡張子がJPGと大文字になっていたなんてことがありえます。
投稿時にデフォルトのWordPressのエディタ使っていれば、
特に拡張子を意識することなく、エディタが自動で写真の拡張子の大文字小文字をHTMLに反映しているので問題はおきません。
ですが、引っ越しのとき、XMLをインポートするときに、
ブログ内記事の写真のリンクの拡張子が
大文字から小文字(JPG⇒jpg)に変換されてしまうことがあります。
そうすると、WEBサーバー側は大文字小文字を区別しますので、同じ”名前”のファイルがないということで
画像が表示されないということが起こります。
で、どうするか。
コマンドプロンプトで一気に画像ファイルの拡張子を小文字(jpg)に変換するという方法もありますが、
でも、それは敷居が高いという方には以下が簡単でわかりやすいかと。
PC側でリネームソフトを使って、画像ファイルの拡張子を全て小文字(jpg)に変換

サーバーにアップロード


終了

まず、Windows7の方は拡張子が小文字か大文字かも表示されていない方もいるかと思うので
下記のURLにありますように画像ファイルの拡張子が表示されるようにします。
「ファイルの拡張子を表示するには?」
そして、リネームソフトで一気に拡張子を小文字に変換。
サーバーにそのファイルをフォルダ毎アップロード。
で終了です。
ちなみにお勧めのリネームソフトは
Namery
リネームソフトはたくさんありますが、直感的で使いやすく、高機能です。
しかもWindowsXPが対応となっていますが、Windows7 64Bit でも使えてます。
些細なことかもしれませんが、こんな記事でもお役に立てれば幸いです。

WordPressからFC2ブログへの移動について

WordPressで運営していた、
社員ブログ「anちゃんのベトナム滞在記
をFC2へ移行してみました。
FC2のサポートにはWordPressのエクスポートファイルをインポートできると書いてあるのですが、、、
実際にやってみるとインポートできない。。。
ググると逆のFC2→WordPress の情報ばかりがヒット。
でもわかったことはMT(Movable Type)形式ならインポートができるということ。
そして、
WordPressからエクスポートできるWXRファイルをMovable Type形式に変換
できる便利なサイトも発見。
とりあえず、
WordPressのXMLファイルをMT形式に変換⇒FC2ブログへインストール
というやり方は成功しました。
もし、同じような事をしようとしている方は参考にしてみてください。

PHP dirname(__FILE__) .

以下のような問題の解決に「dirname(__FILE__) .」使うと便利です。
1. ファイルへの絶対パスをそのままコード上に記述すると、サーバ環境が変更になったときにパスの書き換えなどが発生して面倒。
2. include, require などの定数を使うときにパスが必要になりますが、パスを記述するのにファイルに相対パスで記述していた場合のパスエラー。
原因は最初に読み込んだ定数(include, require)を記入したphpファイルをカレントファイルとして、次々に他のファイルを読み込みにいくためです。
【定数の解説】
__FILE__:現在の「.php」ファイルへのフルパスとファイル名を表す定数。
dirnameパス中のディレクトリを取得する関数
この二つを組み合わせることで現在の「.php」ファイルが置かれているフォルダ(ディレクトリ)へのパスを取得することができます。
例.
www/app/app.php ファイルからwww/example/example.php ファイルを参照するとき

<?php include(dirname(__FILE__) . "/../example/example.php”);
?>

注:dirname の結果は最後に / が付かないので、上記の例のように / を付けましょう。