TopMovable Type > Movable Type(MT)のファイル数を減らしてみた
2010年4月12日

Movable Type(MT)のファイル数を減らしてみた

Posted at April 12,2010 1:55 AM
Category:[Movable Type]
Tag:[]

Movable Type(MT)のダウンロードアーカイブに含まれるファイル数は、バージョン5.01でそれぞれ次のようになっています。

  • Movable Type Pro(コマーシャルパック・コミュニティパックあり):3254
  • MTOS:2646

Movable Type(MT)のダウンロードアーカイブをローカルPCで展開してからアップロードする場合、ファイル数が多いとアップロードに結構時間がかかります。

ということで、ファイル数が少ない方のMTOSを使って、ディレクトリやファイルをどこまで減らして正常に動作するか、実験しました。

なお、ここで掲載している「ファイル数」は、Windowsのエクスプローラから該当のディレクトリを右クリックして「プロパティ」で表示される「ファイル数」を元にしています。

実験したサーバはCORESERVER-Aです。サーバによってインストールされているPerlモジュールが異なるので、2項のextlibに差があるかもしれません。

実験前の各ディレクトリのファイル数は次の通りです(合計は2646になりませんが・・・)。

  • alt-tmpl:0
  • default_templates:58
  • extlib:317
  • import:0
  • lib:242
  • mt-static:679
  • php:838
  • plugins:87
  • search_templates:4
  • themes:188
  • tmpl:199
  • tools:17

ちなみにWordPress 3.0βは815ファイルなので、削減後の目標ファイル数は815です。

1.ディレクトリを削除

まず、ディレクトリ自体を削除したものは次です。

  • alt-tmpl
  • default_templates
  • import
  • php
  • plugins
  • search_templates

alt-tmplは、代替テンプレート用のディレクトリなので、利用しない場合は不要です。必要であれば適宜復活させてください。空のディレクトリなので削減ファイルは0です。

default_templatesは、Movable Type 4.xまでのデフォルトテンプレートが格納されています。Movable Type 5ではthemesディレクトリのクラシックテーマから読み込まれるので(多分)不要です。これで58ファイル削減されます。

importは、記事のインポートを行うときに利用するディレクトリですが、インポート時はローカルPCの任意のフォルダを指定できるのであれば、なくても問題ありません。空のディレクトリなので削減ファイルは0です。

phpはダイナミックパブリッシングのファイルが格納されていますが、ダイナミックパブリッシングを行わない場合は不要です。これで838ファイル削減されます。

pluginsはプラグインファイルが格納されていますが、実験レベルなので、とりあえず丸ごと削除しました。スタイル切り替えやスパム関係の機能が使えなくなります。これで87ファイル削減されます。

search_templatesには、検索結果をフィードで購読するためのresults_feed.tmplがありますが、実験レベルなので、とりあえず丸ごと削除しました。これで4ファイル削減されます。

2.extlibディレクトリ

extlibディレクトリに次のディレクトリとファイルを残し、他を削除しました。インストールや基本的な動作(記事投稿・再構築・アイテムアップロード・検索・インポート・バックアップ・テーマ切り替え)は行えるようです(何をもって基本とするかはありますが)。全ての動作は確認できていません。

  • auto
  • Class
  • Data
  • File
  • Image
  • JSON
  • Lucene
  • TheSchwartz
  • URI
  • YAML
  • JSON.pm

これで205ファイル削減されます。

2.libディレクトリ

コア機能なので、基本的に削除できるファイルはありませんが、日本語で利用する場合、L10Nディレクトリに不要なローカライズファイルがあるので、en_us.pm、ja.pmのみを残して、他のファイルを削除しました。これで4ファイル削減されます。

3.mt-staticディレクトリ

以下のファイル・ディレクトリを削除しました。

  • themesからminimalist-red以外を削除
  • pluginsディレクトリを削除
  • codepressディレクトリ削除(MT4で利用していた機能?)
  • mt-static/jqueryui/i18nにjquery-ui-i18n.js、ui.datepicker-ja.jsのみを残して他を削除

これで147ファイル削減されます。

4.toolsディレクトリ

スケジュールタスクに必要なrun-periodic-tasksを残して他のファイルを削除します。これで16ファイル削減されます。

5.まとめ

1~4を行うことで、2646ファイルから1192ファイルに削減されました。目標の815ファイルには届きませんでしたが、ファイル数を半分以下に減らすことができました。

実験後の各ディレクトリのファイル数は次の通りです(カッコ内は削減ファイル数)。

  • alt-tmpl:0(±0)
  • default_templates:0(-58)
  • extlib:112(-205)
  • import:0(±0)
  • lib:238(-4)
  • mt-static:532(-147)
  • php:-(-838)
  • plugins:0(-87)
  • search_templates:0(-4)
  • themes:110(-78)
  • tmpl:199(±0)
  • tools:1(-16)

Movable Type Proの場合で行う場合は、addonsディレクトリとmt-static/addonsを削除すれば、大体同じ効果が得られます。ただし、カスタムフィールドを利用する場合は、addons/Commercial.packとmt-static/addons/Commercial.packは残す必要があります。

6.その他

Movable Typeに必要なPerlモジュールのチェックを行うためのmt-check.cgiでは必須モジュールとして、

  • CGI::Cookie
  • File::Spec (version >= 0.8)
  • Image::Size
  • CGI
  • DBI (version >= 1.21)
  • DBD::mysql

が表示されますが、今回の実験では、例えばJSON/JSON.pmがないと、データベースのイントールが進行しませんでした。

あと、ファイルを調査して思ったのは、管理画面で利用されるアイコン用の画像ファイルが結構多い(355ファイル)ので、複数の画像ファイルをいくつかのまとまったファイルに統合できれば、ファイル数をさらに減らせると思います。

Posted by yujiro   このページの先頭に戻る
関連記事
この記事を読んだ人はこんな記事も読んでいます
人気エントリー
Hatena Hot Entries
Hatena Entries
トラックバックURL


コメントする
greeting

*必須

*必須(非表示)


ご質問のコメントの回答については、内容あるいは多忙の場合、1週間以上かかる場合があります。また、すべてのご質問にはお答えできない可能性があります。予めご了承ください。

太字 イタリック アンダーライン ハイパーリンク 引用
[サインインしない場合はここにCAPTCHAを表示します]

コメント投稿後にScript Errorや500エラーが表示された場合は、すぐに再送信せず、ブラウザの「戻る」ボタンで一旦エントリーのページに戻り(プレビュー画面で投稿した場合は、投稿内容をマウスコピーしてからエントリーのページに戻り)、ブラウザをリロードして投稿コメントが反映されていることを確認してください。

コメント欄に(X)HTMLタグやMTタグを記述される場合、「<」は「&lt;」、「>」は「&gt;」と入力してください。例えば「<$MTBlogURL$>」は「&lt;$MTBlogURL$&gt;」となります(全て半角文字)

Now loading...
Introduction
Entries of this Category
Recent Entries
Recent Comments
Recent Trackbacks
QRcode

現在停止中です
携帯電話からこのQRcodeを撮影することで携帯用URLを取得することができます

URI for cellular phones
ギターに入った猫
Styles
Font Size
Default
For defective color vision
Gray Scale
RGB Color
Search this site

このブログをメールで購読する by:FeedBurner

loading ...
Categories
Monthly Archives
BlogPeople
Syndicate this site
FeedBurner(RSS1.0/RSS2.0/Atom)
Counter
これまでのアクセス
クリエイティブ・コモンズ・ライセンス
Powered by
Movable Type 5.12