MTOSのカスタムフィールド構築メモ

この本見ながら作ってます。
MTOS活用テクニック―カスタムフィールドで本格的なCMS機能を実現!
MTOS活用テクニック―カスタムフィールドで本格的なCMS機能を実現!藤本 壱
ラトルズ 2009-02
売り上げランキング : 38721
おすすめ平均
star
star
Amazonで詳しく見る
まずエントリーでサンプルにある「サブタイトル」フィールドを追加
 1.MTOSの本を買う。
 2.サンプルダウンロード。
 3.EntrySubTitle.plをpluginでアップロード
 4.mt.cgiにアクセスでアップロードが走り、
   mt_entryテーブルにentry_sub_titleが追加される。
 5.alt-tmpl\cms\edit_entry.tmplに追記
 6.テンプレートに<MTEntrySubTitle>追記

次に自作フィールド「価格」を追加
 1.EntrySubTitle.plをEntryKakaku.plに
 2.EntryKakaku.plで
   2-1.SubTitleをKakakuに一括置換 3箇所
   2-2.sub_titleをkakakuに一括置換 7箇所
 3.上の3~6を行う。

次にブログに「Tel」フィールドを追加
自作フィールド Tel
 1.EntrySubTitle.plをBlogTel.plに
 2.BlogTel.plで
   2-1.SubTitleをTelに一括置換 3箇所
   2-2.sub_titleをtelに一括置換 7箇所
   2-3.entryをblogに一括置換
 3.BlogTel.plをpluginでアップロード
 4.mt.cgiにアクセスでアップロードが走り、
   mt_blogテーブルにblog_telが追加される。
 5.alt-tmpl\cms\cfg_prefs.tmplに追記
 6.テンプレートに追記

メモ

 ・既存テーブルにカラムが追加される。
 ・失敗したら自分で削除?
 ・属性変更なんかはプラグインのバージョンアップでできる。
 ・間違った書き方をすると、保存でperlのエラーが大量にでて焦る。
 ・プラグインは1つにまとめて書ける。サンプルMultiField
 ・edit_entry.tmplはウェブページと共通
   <mt:if name="object_type" eq="entry">
   <mt:if name="object_type" eq="page">
で表示分け
 ・255文字以上は'order' => 'text',で指定。
  DBはmediumtextで登録される。