Plone 2.5 → Plone 3.2への移行メモ

(第1回)Zope/Plone開発勉強会 成果。
下記メモは私の環境に依存する内容が含まれています。
括弧の中は、どちらで作業を行ったかを指す。


苦戦したし、問題も残ったが、これでPlone3.2に移行できたようだ。
http://nanasi.jp/

単純移行はエラーでうまくいかなかったので、コンテンツだけを移行。(Zope)

1. 旧Ploneからコンテンツだけをエクスポート。
2. 新Ploneにインポート。

サイトの設定の変更。(Plone)

1. Ploneの設定を変更、言語を日本語に

カスタマイズしたテンプレート中の情報の修正。(Zope)

1. "site_properties/description"がエラーになっていたので、"portal/description"に修正する。

site_properties/description → portal/description

ファイルのロック。(Plone)

ファイルが何故かロックされて編集、削除ができない!!
タイトルをPlone上で一度保存したら、その直後は編集、削除できた。
この仕様は良いのだろうか?

rawデータを使えるように。(Plone)

うちのサイトはばりばりrawデータを使っているので、

settings['raw_enabled'] = 0

ってのを探して、

settings['raw_enabled'] = 1

に変更した。

ポートレットの作り直し。(Plone)

根本的に変わったらしい。
Ploneで作ったポートレットは作り直した。

関係するドキュメントがあると、エラー。(Plone)

Ploneで記事に関係するドキュメントを紐づけていると、
その記事を新Ploneで表示、編集しようとする時にエラーが発生した。


とりあえず、表示しなければエラーにならないようなので、
関係するドキュメント機能はあまり使っていないこともあり、封印することにした。
portal_skins/plone_content/document_relateditems
を上書きし、空っぽのテンプレートを用意する。


関連ドキュメントはそのうち、対策を練ることにする。

スマートフォルダの検索条件の修正。(Plone)

スマートフォルダの検索条件から、位置情報が飛んでいたので修正。
ひとつひとつ、位置情報を設定していく。数が多くて泣きそうだったが。

デザイン。(Zope)

デザインは全面的に入れ替え、作り直し。
Ploneで使っているテンプレートのうち、いくつかがdeprecatedになっていた。
portal_view_customizationも編集。


本当はbuildout使った方が良いのだろうだけど、今は余裕がない。

ポートの変更。(Zope)

Ploneの運用にあわせてzope.confを編集して、ポートを追加、および変更する。さらにFTPサーバも追加する。
うちの構成はこのような形。

HTTPサーバ その1
ポート:12282
ルートにアクセスするとZope管理画面が表示される。

HTTPサーバ その2
ポート:12200
ルートにアクセスするとPloneサイトが表示される。

FTPサーバ
ポート:12221


1. zope.confで次のように設定しました。

<environment>
  HTTP_MANAGE 12282
</environment>

<http-server>
  address 12282
</http-server>

<http-server>
  address 12200
</http-server>

<ftp-server>
  address 12221
</ftp-server>


2. ZopeのルートにExternal method追加。
External methodを追加。

id            - accessRule.py
title         - Plone Access Rule
Module Name   - CMFPlone.accessRule
Function Name - accessRule


3. ZopeのルートにSet Access Rule追加。
Set Access Ruleを追加。名前は「accessRule.py」。
先ほど追加したExternal methodと同じ名前。
これで、ルートアクセス時にPloneを表示可能に。


4. PloneのルートにSiteRoot追加。
SiteRootを追加。パスのデフォルト値は"/"だが、
これを空白に設定すること。
忘れるとPloneにアクセスできなくなる。その場合はUndoで戻したりする。

サイト設定のHTMLフィルタを変更。(ZopePlone)

使う必要のあるタグは有効にする。

Zope管理画面の文字コード設定。(Zope)

ZMIのpropertiesに

Name  - management_page_charset
Value - utf-8

を設定。

サイトの静的化。

この作業は自分のサイト特有の作業。
動的なPloneサイトを、静的なサイトに作り直す。
Plone版用に作った処理をそのまま利用できた。