diary

Archive for the ‘utility’ tag

WordPressのデータファイルを分割する

without comments

WordPressの標準のExportユーティリティを使うと、データファイルをダウンロードすることができます。このデータファイルは、Importユーティリティで復元できます。バックアップや移行のときに便利です。

ただ、データが大きいときには少々問題があります。Exportするときにはいくらデータが膨大でも問題ないのですが、ImportするときはPHPなどの制約で通常はアップロードするファイルのサイズの上限が決められていて、それよりデータファイルが大きいとImportに失敗します。私の経験だと、ホスティング会社に間借りしている場合、上限は2MBのケースが多いです。私も毎回これに引っかかります。

自前でサーバを持っていればこのあたりはPHPをいじるなりしてなんとでもなるのですが、間借りしている時などはちょっと面倒です。サポートに連絡して上限を上げてくれ、ということもできるのですが、大人の事情もあって必ずしもうまくいくとは限りません。これの手っ取り早い解決方法は、手でデータファイル(XML)を分割してImportを繰り返す、です。まあでもこれがまた面倒です。難しくはないけどただただ面倒です。

なもんで、データファイルを自動で分割するスクリプトをちょこちょこっと書きました。せっかくなので公開しておきます。こんなくだらなくて面倒な思いをする人が、一人でも減りますように。

https://github.com/kei-51/wp-data-splitter

中身はただの1本のpythonのスクリプトです。データはXMLなんですが、中身はただtext matchingを繰り返しているだけです。とりあえず最近のWordPressでは動くのを確認しましたが、将来WordPressのデータファイルの仕様が変わったら動かなくなるかも。その時はご容赦を。

Written by Kei

December 2nd, 2012 at 11:27 pm

Posted in Tech

Tagged with , , , ,