概要
これは qTranslate から各言語のマルチサイトに移行する際に使うプログラムです。qTranslate によってつけられた言語ごとの内容とタグを取り除きます。
Keywords: qTranslate, qTranslate-X, multi-site, multi-language, Wordpress
はじめに
今から 10 年ほど前 (2013年) 当時の Web Hosting では一番安いサービスでは利用できる SQL database の数は 0,そして次のレベルでの databse 付きのサービスでも 2 個まで,というようなものが多かったです。そのため database を使用する Wordpress を多言語で使う際には qTranslate https://qtranslatexteam.wordpress.com/ などの多言語化プラグインを使い database の消費数を減らすことが行なわれていました。
qTranslate プラグインの仕組み
qTranslate プラグインでは地の文に特殊なタグ ([:ja],[:]など) を入れてプラグインがその都度言語ごとの内容を取り出すという方法をとっています。
qTranslate プラグインの利点と問題点
多言語化しても database の消費数が 1 個で済むのが qTranslate の一番大きな利点です。10 年前 (2013年) にはdatabase 数が 2 個までというようなHosting service が普通であったため,この利点は大きかったです。しかし,qTranslate では地の文にタグを入れて言語を区別するため,タグを誤って消してしまったり,知らずにタグと同じ文字列を入れると表示が乱れるという問題があります。また,他のプラグインは内容にタグを入れて言語を切りかえていることを知らないために,同時に使えないプラグインがありました。つまりプラグインの利用に制限があります。
qTranslate サポート終了, Wordpress の version up
現在は database の価格が低下し,入門の Web Hosting サービスでも 10 個の database を使えるというものも珍しくなくなりました。そして qTranslate は Wordpress 4.x でサポートが終了され,現在の 6.x で使用すると上手く働きません。そのために Wordpress の update と一緒に qTranslate の使用をやめることにしました。
remove_qtrans.py
移行の際,Worldpress の export した xml ファイルを手動で編集することも検討しましたが,記事数が多いこともあり,また私の管理するサイトでは 3 言語を使用していることもあって,これを処理するプログラムを書くことにしました。それが remove_qtrans.py です。github のここ に置いてあります。
remove_qtrans.py の利用方法
Wordpress の export file export.xml からドイツ語 (de) 部分を除き,out.xml ファイルを出力する場合は以下のように使います。
python3 remove_qtrans.py --language de --infile _export.xml --outfile out.xml
ヒント: 最後に残った言語タグはエディターの replace 機能で取り除くと良いでしょう。
まとめ
qTranslate から特定の言語部分とその言語のタグを除くプログラムを作成したので New BSD License で公開します。これがどなたかのお役に立てばうれしいです。New BSD License なので動作保証などはありません。2023-9-15(Fri)
Comments
Post a Comment