2010年10月18日
最近、サイト制作の依頼を受けて、MODx や WordPress を 扱う機会がありました。MODx や WordPress は PHP で書かれている CMS なので、カスタマイズのために PHP をちょっと勉強したりしたのですが、そのちょっとの勉強で結構いろいろとカスタマイズができるようになりまして、ついでに当ブログも MTOS から WordPress へ移行しました。
これまで MT には大変お世話になりましたが、WordPress を使ってみると、カスタマイズが MT より簡単なんですね。条件分岐とループ以外は、閉じタグが無いので、コードがすっきりします (正確には、PHP の開始タグ <?php と終了タグ ?> が常に必要になりますが・・・)。また、テンプレートの作成の際、エディタのPHP構文を使えばソースが見やすいですいのもいいです。その他、アップグレードがダッシュボードから簡単にできるのもいいですし、カスタムフィールドも記事個別に作成出来きます。MTOS ではカスタムフィールドが使用できませんし、MT は、カスタムフィールドは作成できますが、仕事で使用する場合はライセンスが必要になります。
逆に MT の方が優れている点も気が付きました。複数のブログを設置するのは、MT の方が簡単で、WordPress はサーバーに関する知識が少々必要のようです。
で、移行手順ですが、MT の管理画面>ツール>エクスポート でダウンロードしたファイルを WordPress の管理画面>ツール>インポート MT用インポートプラグインを選び(自動インストール!)でアップロードするだけです。
WordPress の日本語ページは、ドキュメントが充実し、フォーラムのやりとりも盛んなので、つまづいた時も大抵自己解決できますが、初めてテンプレートを自分で作成するには、参考書があると便利です。ネットの情報は大変充実しているので参考書無しでもテンプレートを作成することはできますが、作成手順(要はスケジュール表)を自分で考えるのは、結構大変なものです。
僕は下記アフェリエイトの 2.8 対応版を参考にしました。3.x 版も新しく出版されているようです。
タグ:MTOS, WordPress
カテゴリー:コンピュータ |
コメント (1) |
投稿者:hyodo
2009年1月4日
昨年末にMT4.1からMTOS4.23へ移行&アップグレードし、データベースをSQLite3からMySQL4へ移行した。今回はデータベースの変更も行ったのだが、いろいろ調べた結果、SQLite3からMySQL4へコンバートすることは、データベースの仕組みがある程度わかっていないとできないようなのでコンバートはあきらめ、mtからブログデータをエクスポートし、mtosへインポートすることにした。その他、再構築をしょっちゅうしなくて済むようにダイナミックパブリッシングを使用し、コメント認証用キャプチャ、検索ボックスを新たに設置した。備忘録を下記に記す。
- サーバ(xrea)にmtosフォルダを作成し、mtosのファイルをすべてアップロード
- xreaのサーバ設定で、MySQLの追加設定をする。
- mt-config.cgiのCGIPath、StaticWebPathを変更し、データベースをMySQLにする。DBHostは localhostでよいようである。
- mt でエクスポートしたデータをmtosでインポートする。Six Apartのアナウンスにもあったとおり、mt4.1のカスタムフィールドはエクスポートできないので要注意。よって、「無聊ブックス」はカスタムフィールドが抜けている。無聊ブックスは記事数が少ないので、そのうち手動で直す予定。
※追記:mtosはオープンソースのためかカテゴリーフィールドが使用できないことが判明。ダッシュボードではカテゴリーフィールドを作成することはできるのだが、ブログ記事の編集の際に、カテゴリーフィールド部分の保存ができないので、なんでだろう?と思ってネット検索をして調べ原因が解った。
- テンプレートはオリジナルなので、mtで使用していたテンプレートと同じものに入れ替える。
細かい設定は下記のとおり(特記なき限りチェックはデフォルト)
ダイナミックパブリッシングの設定
- ブログのダッシュボード>デザイン>アクション(右下)>公開プロファイルを設定>「アーカイブのみダイナミックパブリッシング」を選択。
- 設定>公開設定>モジュールオプション>「テンプレートモジュールをキャッシュする」にチェックを入れる。
参照記事 WingMemo
コメント認証用キャプチャ”Image::Magick”の設定
- 設定>コメント設定>コメントポリシー>即時公開する条件>「すべて自動的に公開する」にチェックを入れる。
- 設定>登録/認証>認証方式>「認証なしコメント」と「メルアド要求」にチェックを入れる。あとはすべてOFF
- システムのダッシュボード>ツール>システム情報より、Image::Magickがインストールされているかチェックする。
- Image::Magickがインストールされていれば、mt-config.cgiに「CaptchaSourceImageBase 絶対パス」を付加する。絶対パスはサーバがxreaの僕の場合は、/virtual/user_name/public_html/your_domain/mtos/mt-static/images/captcha-source/ となる。
- 設定>コメント設定>表示オプション>CAPTCHAプロバイダ>「MovableType既定」にチェックを入れる。
- デフォルトのままだと、コメントプレビュー時にキャプチャが表示されないので、システムテンプレートのコメントプレビューに、キャプチャ部分のソース~を張り付ける。
参照記事 Task Mother
検索ボックスの設置(サイドバーに設置)
- ウィジェットにあるデフォルトの「検索」のソースを自分のテンプレートに合うように改変、テンプレートモジュール化する。
- システムテンプレートにあるデフォルトの「検索結果」のソースを自分のテンプレートに合うように改変。
月別アーカイブをmonthchunksにする場合の注意
僕は月間アーカイブの表示を”monthchunks”にしているのだが、テンプレートはmt4.1と同じなのにmtos4.23では何故か表示されない。で、いろいろ調べていたら、WingMemoにその理由が載っていた。MTArchiveListでパラメータに archive_type=”Yearly” を使う場合は、アーカイブテンプレートに年別のテンプレートを設定しておかねばならないそうだ。だからアーカイブマッピングを年別に設定した空テンプレートを作成すればOK。空テンプレートなので当然公開はしないから、公開設定は手動にでもしておけばよい。ちなみに僕のソースは非常に簡単で条件分岐もない。
<h2>月別アーカイブ</h2>
<dl>
<MTArchiveList archive_type="Yearly" sort_order="descend">
<dt><$MTArchiveDate language="en" format="%Y"$>年</dt>
<dd>
<MTArchiveList archive_type="Monthly" sort_order="ascend">
<a href="<$MTArchiveLink$>"><$MTArchiveDate language="en" format="%m"$>月</a> 
</MTArchiveList>
</dd>
</MTArchiveList>
</dl>
今後の課題
- ブログ記事のタグの使い方。特に複数のタグの使用方法について。>>1月8日 解決。
参考記事>小粋空間 “Movable Type 3.3 エントリー・タグ詳説“
- カテゴリーアーカイブ記事のページ分割方法。>>1月7日 解決。
参考記事>WingMemo “ダイナミック・パブリッシングで頁分割(8) MT4.2公式編“
今日の写真
蕨、三学院の駐車場入り口の植栽がちょっと面白かったので撮ってみました。
タグ:MTOS
カテゴリー:コンピュータ |
コメント (0) |
投稿者:hyodo