2008年05月24日

MODxに既存サイトを取り込んでみました

現在サイトのリニューアルと新規サイト制作を同時に請け負っているお客様がいるのですが、そのお客様のサイトをすべてMODxで管理させていただこうと考えています。

まずは既存サイトをMODxに取り込むとどうなるかを実験してみました。

結果をまず書くと、取り込み自体はあっさりできてしまいましたが、注意点がいくつかありました。

文字コードを合わせること

MODxの文字コードは、すべてUTF-8としました。そこへ何も考えずに「サイトのインポート」を実行したら、見事に文字化けしてインポートされましたふらふら

インポートするファイルを/assets/imports/にコピーして、その後「サイトのインポート」を実行するのですが、事前に文字コードをエディタなどで変換しておくのがいいようです。インポートするhtmlファイルのmetaタグは見てくれないし、変換もしてくれないようです。

基本的にはhtmlファイルのみ

最初は画像からJavaScriptからcssからFlashまで全てのファイルを/assets/impoprts/に放り込んで試してみました。取り込みに成功したのは、htmlファイルだけでした。

テーブルデザインもテーブルデザインで取り込み

お客様のサイトは2年ぐらい前に制作されたものなのですが、残念ながら他のWeb屋さんに依頼されてゼロから作られました。その作りが、昔ながらのテーブルで切ったデザインとなっているのでした。これを活かしつつリニューアルするのは気が重いのですが、仕方がありません。

MODxに取り込むと、きちんとテーブル構造のまま取り込まれ、何の問題もなくブラウザで表示できました。Xoopsのときはそのような場合とっても苦労したのですが、さすがMODxです。

PHPファイルはMODxの外で動かす

メールフォームにPHPを使用しているファイルがありました。ルートにPEARも置いてインクルードしています。その場合、
  • MODxのindex.phpと同じ階層(ルート)にphpファイルを置く
  • 旧htmlファイルからphpファイルに張っていたリンクはそのまま何も変更なし
  • phpファイルの中でhtmlファイルへ張っているリンクも、フレンドリURLを使っていれば何も変更なし
とすると、動かすことができました。

画像、JavaScript、Flashなどもルートに置く

これらのファイルは、MODx管理下ではなく、ルートにimagesとかjsとかのディレクトリを作って置いてみました。参照はsrc="images/abc.gif"などで問題ありませんね。

おかしなコードは削除される

元のテーブルデザインと比較して、ボーダーが入っていない部分があって、なぜなのか悩んでしまいました。調べてみると、原因は一部の属性が削除されてしまったからでした。

たとえば、
<td width="11" background="images/background.gif">
のbackgroundは消されてしまいます。ドキュメントの編集から入ってもう一度入力してもダメです。同じように使い方が間違っているような部分はみんな消されていました。td要素にbackground属性は定義されていないんですよね。それでもブラウザは表示してくれていたようです。

このWeb屋さん作ったhtmlにはこういう基本的な間違いがたくさんあるんだよなぁ。それでもプロとしてやってるんですよね...

グチっても仕方がない、正しい記述に直さないといけないようです。

今後の更新がラクになるようにテーブルデザインを少しずつ改善していくかどうか... 悩ましいところですね。
ラベル:MODx CMS HTML PHP
posted by 急いでジャンプ at 18:30| Comment(0) | TrackBack(0) | CMS | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス: [必須入力]

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバック
×

この広告は90日以上新しい記事の投稿がないブログに表示されております。