04/25
WordPressを使用し始めて数ヶ月。ようやく見えてきたかな、という感じです。
プラグインの豊富さでは他のCMSより抜きんでている感じで、これから益々楽しみですが、
その膨大なプラグインのライブラリの中からどうチョイスするか?が問題になります。
また英語ベースのものが大半を占め、使いこなすまでには苦労もありますが、
そのキーワードを紐解く作業もまた楽しいモノだと思い始めたこのごろ。
一度使用したプラグインは、今後の情報として書き留めていこうと思います。
今回は・・・
WordPressのDBをダッシュボード上から管理出来るプラグイン「WP-DBManager」を追加。
バージョン:2.5(2010.04現在の最新バージョン)
プラグインのサイト
まず、インストール直後にプラグイン管理画面にて以下のようなWarnningが赤表示。
「Your backup folder MIGHT be visible to the public」
「To correct this issue, move the .htaccess file from (パスA) to (パスB) 」
要は、パスAに置いてある.htaccessファイルをパスBへコピーせよとのこと。
ただしパスA上のファイル名は「htaccess.txt」となっているので、「.htaccess」に変更してコピーして無事完了。
phpMyadminが無くても手軽にデータ削除、最適化などが出来るので、そのへんは便利。
日本語版もあるのを後で気がつき、「wp-dbmanager-ja.mo」「wp-dbmanager-ja.po」をWP-DBManagerプラグインのフォルダ内にコピーするという横着をしたものの、一部日本語化できず。
はじめから日本語版をインストールしたほうがいいという事でしょう。
参考にさせていただいたサイト
04/15
WordPressに装備されているインポート、エクスポートで大量データを取り扱う時に不都合が生じたため、試しに使ってみたプラグインが、「Advanced Export for WP & WPMU」。
制作中のサイトにて、約10,000件を越える記事をバッチ処理にてxml化し、Wordpressに取り込もうとして、問題が発生してしまった。インポートファイルが約40MBにふくれあがった結果、2,000件目あたりの処理中にタイムアウトし、取り込み不能となる。
実行したのはローカルPCサーバ上のテスト環境にて。
WordPress バージョン:2.9.2
ツール・インポートのダッシュボードには、「最大サイズ:50MB」と表示されているが、気安めだろうか?
まずphp.iniの処理時間関係のパラメタを、よくわからないままとりあえず10倍にしてみる。
→ 状況は変わらず。
次に.htaccessの記述追加を試みる。
#Change upload limits
php_value memory_limit 34M
php_value post_max_size 33M
php_value upload_max_filesize 32M
php_value max_execution_time 600
#Change upload limits end
参考記事:http://www.ideaxidea.com/archives/2009/02/wordpress_import_hacks.html
→ でも状況はかわらず。といか、php処理が瞬時に落ちる現象にびびってしまう。
(文字コード設定ミス?ファイルの設置場所間違い?急いでいたので調査は回避)
バッチ処理でファイル出力時に、1ファイル4MB程度になるように10分割。
→ 不細工な方法だけど、とりあえずテスト環境に取り込み成功。
その後データをリモートサーバ上に移し替えるために、エクスポートしようとして、当然のようにエラーとなる。
リモートサーバ:Xserver使用
→ というわけで、年月範囲や投稿者、カテゴリー毎などの色々な指定で大きめのエクスポートファイルを出力できるという「Advanced Export for WP & WPMU」を使ってみた。
http://wordpress.org/extend/plugins/advanced-export-for-wp-wpmu/
今回は分割範囲が微妙な大きさだったので、全データ移行は遂行できなかった。でも今後1,000件(記事)単位のデータを部分的に移行するケースで使えそうだなと。
・・・・
などと時間を費やした結果、phpMyadminでバックアップ、リストアすることに落ち着く。
それでもDBのSQLは20MB程度だったため、結局テーブル単位での移行で作業を完了する。
サーバ環境設定について少しは知識がないと、こんなに作業がモタつくという教訓。
<今日のまとめ>
~Wordpress 10,000件(xmlファイル1,300,000レコード、40MB)のデータ移行~
1.10,000件 ==> 1,000件inport(4MB) × 10ファイル分割
2.1,000件inport × 10回 ローカルサーバWordpressにインポート
3.ローカルサーバMySQ:phpMyadminでバックアップ(SQLテーブルエクスポート)
4.リモートサーバMySQ:phpMyadminにSQLインポート(11テーブル別・計20MB)
以上