移行した COREBlog2 のエントリの作成日を変更
かなりいまさらな話ですが、COREBlog から COREBlog2 に移行したエントリの「作成日」を、もともとの作成日に変更しました。
COREBlog から COREBlog2 への一般的な移行の方法は、「エントリをファイルに書き出し」→「COREBlog2 でインポート」という手順です。
で、インポートするときには当然インポートした日時でエントリが作成されるため、COREBlog2 のインポート時にはもともとの作成日は「Effective Date(公開の開始日時)」に設定されるようになっていました。
で、私も最近まで「Creation Date は変更できないもの」と思っていたんですが、Archetypes の途中から Manage Portal 権限があれば変更できるようになったようです。
というわけで、 How to set the creation date のページを参考にしてエントリの日付を「もともと」の日付に変更するスクリプトを書いてみました。
下記のコードをコピーして、setdate という名前の Script (Python) を Plone Site の Root に作成します。:
migrate_time = DateTime('2006/01/29 01:31')
if context.meta_type == 'COREBlog2':
for entry in context.objectValues('COREBlogEntry'):
if entry.created() < migrate_time:
print entry.id
entry.setCreationDate(entry.getEffectiveDate())
entry.reindexObject()
return printed
なお、migration_time には実際に移行を行った日時のちょっと後を指定します。
コードを作成したら http://COREBlog2のURL/setdate にアクセスして実行します。
(Manage Portal 権限を持ったユーザでアクセスする必要があります。)
するとある程度時間がたったあとに、作成日時が変更されたエントリーの ID 一覧が表示されて処理は終了です。
適当なエントリーを表示して、作成日時が「Effective Date(公開の開始日時)」と同じ値になっていることを確認してください。
以上、だからなにがどうなるの?ってのはないんですが、個人的には作成日は本当の作成日の方がしっくりくるかなーということでやってみました。
-
- ¦
- 固定リンク
- ¦
- コメント (0)
- ¦
- トラックバック (0)
- トラックバック用URL:
- http://takanory.net/takalog/517/tbping
- きみのためなら死ねる
- ¦
- メイン
- ¦
- 定期演奏会のお知らせ
鈴木たかのりです。とりあえず日記っぽく雑多なことを書き込んでいこうと思っています。
zope/plone関係の技術的な内容については