COREBlog2 用に Image を ATImage に変換する
現在 zope developers camp の真っ最中ですが、合宿の本題とは関係ないものをこないだから作っていたので公開します。(^^;)
COREBlog から COREBlog2 に移行したら、エントリーや画像などが AT Content Types ベースのものに変わりました。
でも、以前の COREBlog のエントリー用に作成した画像は、普通の Image オブジェクトのままです。
というわけで、こんなことをする Python Script を作りました。
- Image オブジェクトを ATImage に変換します。
- その Image オブジェクトがはってあったエントリーと ATImage の関連付けをします。
実際に変換を行うための手順は以下の通りです。
- 添付してある Python のソースで
portal_skins/customに image2atimage という Python Script を作成します。 - 次に http://COREBlog2 のURL/image2atimage という URL をブラウザで開いて、画像の変換を実行します。
- 画像の変換に(画像の数によりますが)結構時間がかかるのでしばらく待ちます。
- 変換が終了すると、こんな感じの変換ログが画面上に出力されます。
20050828-02.jpg original image was moved to backup folder. ATImage 20050828-02.jpg was created.)
- 09.MZZZZZZZ.jpg original image was moved to backup folder. ATImage 4751521365.09.MZZZZZZZ.jpg was created.) add reference to COREBlog2 entry 22
上記の変換ログから、元画像、新画像、関連付けを行ったエントリーにリンクがはられているので、きちんと変換されていることが確認できます。
なお、元画像は全て images/backup に移動してあります。
また、元画像に entryid プロパティが設定してあった場合、そのエントリーとの関連付けが行われます。 (なので、ちゃんと表示されます。)
それから、今までエントリーに画像を表示するときは、自分で img タグを書いていたと思いますが、そのタグの削除は自動的に行われません。
なので、image_tag_checker を同様に custom の下に Python Script として作成して
http://COREBlog2 の URL/image_tag_checker という URL にブラウザでアクセスすると、
img タグが存在する行とそのエントリーへのリンクが表示されるので、手作業で消してください。
# 自信があるかたは正規表現で一括置換したりとかもアリだと思います。
なお、image2atimage を実行しちゃうと後戻りするのはかなり面倒だと思うので、あらかじめバックアップを撮ったり、Blog のコピーを作成してから実行するなど、事前に確認をするようにしてください。
image2atimage
image_tag_checker
-
- ¦
- 固定リンク
- ¦
- コメント (0)
- ¦
- トラックバック (0)
- トラックバック用URL:
- http://takanory.net/takalog/493/tbping
鈴木たかのりです。とりあえず日記っぽく雑多なことを書き込んでいこうと思っています。
zope/plone関係の技術的な内容については