Home
Explore
Submit Search
Upload
Login
Signup
Advertisement
Check these out next
エキスパートGo
Takuya Ueda
超効率的フロントエンドデバッグ術
Shinji Hashimoto
Java script aula 07 - eventos
Cristiano Pires Martins
Fate/Grand Orderにおける大規模なデータベース移行と負荷試験
MorioImai
Introduction to HTML
Ajay Khatri
アプリケーションコードにおける技術的負債について考える
pospome
2 TomcatによるWebアプリケーションサーバ構築 第2章 Tomcat概要(2)-セッション
Enpel
情報共有は、なぜGoogle Docsじゃなく、 Confluenceなのか。
Narichika Kajihara
1
of
73
Top clipped slide
Movable Type カスタムフィールドのまとめ
Nov. 30, 2014
•
0 likes
7 likes
×
Be the first to like this
Show More
•
12,210 views
views
×
Total views
0
On Slideshare
0
From embeds
0
Number of embeds
0
Download Now
Download to read offline
Report
Technology
MTDDC Meetup TOKYO 2014での発表スライドです。
Yujiro Araki
Follow
Software Developer at koikikukan
Advertisement
Advertisement
Advertisement
Recommended
input type = password autocomplete = off は使ってはいけない
彰 村地
48.9K views
•
19 slides
Clarity 2019 で デザインシステムの課題は人なんだと痛感した話
Yusuke Goto
3.4K views
•
82 slides
Cours d'introduction aux HTML5 & CSS3
Abel LIFAEFI MBULA
3K views
•
35 slides
ドメイン名の話 (データベース/SQL)
tsudaa
4.6K views
•
12 slides
DroidKaigi 2019 Chrome Custom Tabsの仕組みから学ぶプロセス間通信
ryo_mm2d
3.8K views
•
103 slides
Ruby のワンライナーについて
Tomoya Kawanishi
1.3K views
•
14 slides
More Related Content
Slideshows for you
(20)
エキスパートGo
Takuya Ueda
•
25.8K views
超効率的フロントエンドデバッグ術
Shinji Hashimoto
•
1.2K views
Java script aula 07 - eventos
Cristiano Pires Martins
•
875 views
Fate/Grand Orderにおける大規模なデータベース移行と負荷試験
MorioImai
•
21.1K views
Introduction to HTML
Ajay Khatri
•
304 views
アプリケーションコードにおける技術的負債について考える
pospome
•
2K views
2 TomcatによるWebアプリケーションサーバ構築 第2章 Tomcat概要(2)-セッション
Enpel
•
10.8K views
情報共有は、なぜGoogle Docsじゃなく、 Confluenceなのか。
Narichika Kajihara
•
8.9K views
ブラウザ自動化ツール カオスマップ風 - STAC2018 LT
hnisiji
•
13.6K views
パフォーマンスの良いGASの書き方 Best Practice
啓介 大橋
•
16.1K views
conte - ABEMA's Design System
Yusuke Goto
•
4.2K views
serviceクラスをやめようサブクラスを使おう
よしだ あつし
•
10.8K views
Laravelの認証について
Takeo Noda
•
7.4K views
「ウチの事業部の商品をWebサイト・アプリで目立たせて!」私だけじゃなかった! 社内政治と落としどころの見つけ方
Yoshiki Hayama
•
3K views
AWS CognitoからAuth0への移行パターン4つ
株式会社スタジオメッシュ
•
542 views
【初心者向け】Go言語勉強会資料
Yuji Otani
•
36.9K views
ドメインモデルの育て方
増田 亨
•
13.2K views
Réalisation d'un mashup de données avec DSS de Dataiku et visualisation avec ...
Gautier Poupeau
•
4.5K views
JSUG 20141127 「Spring Bootを用いたドメイン駆動設計」
Junichiro Kazama
•
12.5K views
40歳過ぎてもエンジニアでいるためにやっていること
onozaty
•
31.8K views
Similar to Movable Type カスタムフィールドのまとめ
(20)
これから使おう!Term metadataの使い方 in WordBench Saitama
Kasumi Ogawa
•
533 views
これから使おう!Term metadataの使い方
Kasumi Ogawa
•
1.6K views
a-sap06「カスタムフィールドを使いこなす」
Seiko Kuchida
•
1.9K views
WordPress初心者からの脱出! カスタムなんとかをちゃんと理解する
Takashi Uemura
•
111.8K views
Word Press on Movable Type
Hajime Fujimoto
•
1.4K views
【Wordpress】LightBox風jQueryを使ってポップアップ上でカスタムフィールドを出力。
Kazuki Akiyama
•
3.7K views
脱コピペ!デザイナーにもわかるPHPとWP_Query
Hidekazu Ishikawa
•
4.7K views
20141206 handson
Six Apart
•
663 views
eZ Publish勉強会10月〜Wysiwygエディター〜
ericsagnes
•
1.1K views
AnotherCustomFieldsプラグイン拡張パックのご紹介
Hajime Fujimoto
•
1.8K views
20141119 Movable Type HandsOn Seminar
Six Apart
•
633 views
Wp html5
regret raym
•
1.2K views
WordPressのCSSを 理解しよう!
BREN
•
4.2K views
ゼロからつくるWord pressテーマ第5回
Hitsuji
•
3.1K views
ゼロからつくるWord pressテーマ第6回
Hitsuji
•
3.9K views
a-blog cms「simple2016」で学ぶ カスタマイズ初級編
Kazumich YAMAMOTO
•
1.3K views
Movable TypeのWebアプリケーションフレームワークの基本
Hajime Fujimoto
•
4.2K views
WordPressのテーマ編集時に覚えておきたいID名やClass名
tamotsu toyoda
•
5.7K views
DW テンプレートをマスターして 楽々サイトメンテナンス
Akira Maruyama
•
2.3K views
WordBeach @kurudrive
Hidekazu Ishikawa
•
3K views
Advertisement
More from Yujiro Araki
(9)
Movable Typeで承認ワークフロー
Yujiro Araki
•
3.1K views
MovableTypeテンプレートタグのまとめ
Yujiro Araki
•
8K views
いまさら聞けないJSONPのまとめ
Yujiro Araki
•
9.3K views
Websocketのお絵かきチャットサンプル
Yujiro Araki
•
4.5K views
MTDDC 2012
Yujiro Araki
•
5.1K views
MTDDC Meetup Tokyo 2011:もっとディープにMovable Type
Yujiro Araki
•
6K views
MT DDC Tokyo(テーマ編):テーマを使った手間いらずなサイト制作 - バージョン管理
Yujiro Araki
•
1.2K views
Theme Framework in Depth - MT DDC Tokyo
Yujiro Araki
•
7.8K views
MT DDC Tokyo(テーマ編):テーマを使った手間いらずなサイト制作
Yujiro Araki
•
3.8K views
Recently uploaded
(20)
JSAI2023_企画セッション(仕掛学)資料
Matsushita Laboratory
•
39 views
初学者のためのプロンプトエンジニアリング実践.pptx
Akifumi Niida
•
616 views
CDLEハッカソン2022参加報告.pdf
SHOIWA1
•
10 views
社内ソフトスキルを考える
infinite_loop
•
91 views
AIEXPO_CDLE名古屋紹介
KotaMiyano
•
4 views
ネットワークパケットブローカー市場.pdf
HinaMiyazu
•
9 views
生成AIのビルド方法 (ChatGPT)
Citynow Asia Inc
•
0 views
【DL輪読会】Poisoning Language Models During Instruction Tuning Instruction Tuning...
Deep Learning JP
•
156 views
Forguncy8 製品概要 202305.pptx
フォーガンシー
•
57 views
JSONEncoderで詰まった話
とん とんぼ
•
144 views
SoftwareControl.pdf
ssusercd9928
•
15 views
Voyager: An Open-Ended Embodied Agent with Large Language Models
harmonylab
•
23 views
TestSIP (1).pdf
DeependraSingh712859
•
2 views
JSTQB_テストマネジメントとレビュープロセス.pdf
akipii Oga
•
266 views
DrupalをDockerで起動してみる
iPride Co., Ltd.
•
22 views
量子論.pdf
hiro150493
•
9 views
MC-800DMT intrusion detector manual
Vedard Security Alarm System Store
•
3 views
【DL輪読会】マルチモーダル 基盤モデル
Deep Learning JP
•
5 views
Forguncy製品概要.pptx
フォーガンシー
•
165 views
開発環境向けEKSのコスト最適
ducphan87
•
13 views
Advertisement
Movable Type カスタムフィールドのまとめ
カスタムフィールドのまとめ
いつもご静聴ありがとうございます
プロフィール
「Movable Type 5プロフェッショナルガイド」はまだ売ってます
http://www.shinanobook.com/genre/book/662
カスタムフィールドの作成
作成画面
必須フィールド
•カスタムフィールドを使うオ ブジェクトを設定 •「記事」を選択すれば記事
編集画面にカスタムフィー ルドを表示 •「画像」を選択すればアイテ ム(画像)編集画面にカスタ ムフィールドを表示 •後から変更不可 システムオブジェクト
•カスタムフィールドの名前 •編集画面のカスタムフィー ルドに設定した内容を表示
•異なるカスタムフィールドに 同じ名前をつけることも可 名前
•カスタムフィールドの説明 •編集画面のカスタムフィー ルドに設定した内容を表示
説明
•カスタムフィールドの種類 •「テキスト」を選択すれば編 集画面にテキストフィールド
を表示 •後から変更不可 種類
•種類から「ドロップダウン」「ラジ オボタン」選択時にカンマ区切 りで選択する値を設定
オプション(1/3) <select name="customfield_cfselect"> <option value="東京">東京</option> <option value="名古屋">名古屋</option> <option value="大阪">大阪</option> </select>
オプション(2/3) 「tokyo=東京,nagoya=名古屋,osaka=大阪」と入力すれば 表示値と保存値の設定が可能
<select name="customfield_cfselect"> <option value="tokyo">東京</option> <option value="nagoya">名古屋</option> <option value="osaka">大阪</option> </select> 参考:http://www.h-fj.com/blog/archives/2014/02/07-140756.php
•「日付と時刻」選択時に表示 •「日付と時刻」「日付」「時刻」 のいずれかを選択
オプション(3/3)
•カスタムフィールドの入力を 必須にする場合にチェック チェックは外せない
必須を示すアスタリスク •編集時、値を 設定して保 存しないとエ ラーになる 必須 強制表示
•カスタムフィールドを表示し たときのデフォルト値となる 内容を設定
既定値
•定義したカスタムフィールド を一意に決めるキー •MT内で重複しないこと
•大文字/小文字は区別され ない(データベース登録時 にすべて小文字に正規化) •後述のテンプレートでも使 用 ベースネーム(1/2)
テンプレートタグ(1/2) •定義したカスタムフィールド の値をテンプレート上で利
用するためのタグ •大文字/小文字は区別しな い(DBには入力したままの 文字列で登録) •システムとウェブサイトまた はブログで重複できない →次スライド
システム ブログA ブログB
テンプレートタグ(2/2) テンプレートタグ「ABC」 ウェブサイト テンプレートタグ「ABC」 テンプレートタグ「ABC」 テンプレートタグ「ABC」 ベースネームが同一であればOK NG ベースネームが同一であればOK NG
カテゴリ・フォルダのひもづけ
機能 記事編集画面で特定のカテゴリ・フォルダ選択時に 特定のカスタムフィールドを表示
①-1 カスタムフィールド編集画面から設定
①-2 カテゴリ編集画面から設定
②カテゴリ選択でカスタムフィールドを表示 表示
その他 • ひもづけデータはカテゴリID(カンマ区切り)でデータ
ベースに保存 • 一つのカスタムフィールドにつき256文字までしか対応 していません(MT6公式ドキュメント) →確認したところ、vclob(mediumtext)に保持している ので16,777,215バイトまで可能?
カスタムフィールドの設定レベル
カスタムフィールドの設定レベル • MT内のすべてのウェブサイト・ブログで使いたい場合はシ
ステムレベルで定義 • ウェブサイト・ブログ別に使いたい場合はウェブサイトまた はブログレベルで定義
システム ブログA ブログB
カスタムフィールド「ABC」を作成 カスタムフィールド「YYY」を作成 カスタムフィールド「ZZZ」を作成 ブログAのカスタムフィールド ABC YYY ブログBのカスタムフィールド ABC ZZZ ウェブサイト カスタムフィールド「XXX」を作成 ウェブサイトのカスタムフィールド ABC XXX レベル別の使用可能範囲
データベース
テーブル名:mt_field mt_field id
obj_type name 100 entry テキスト type default basename text cftext1 tag こんにちはEntryCFText1
mt_fieldのフィールド名と値 ・テキスト:text ・テキスト(複数行):textarea
・ラジオボタン:radio ・チェックボックスcheckbox ・ドロップダウン:select ・アイテム:file 入力フォームフィールド名 (ブログID) blog_id システムオブジェクトobj_type 名前name 説明description 種類type デフォルト値default オプションoptions 必須required ベースネームbasename タグtag ・記事:entry ・ウェブページ:page ・カテゴリ:category ・フォルダ:folder ・コメント:comment ・アイテム:file ・オーディオ:audio ・ビデオ:video ・画像:image ・テンプレート:template ・ブログ:blog ・ユーザー:author ・オーディオ:audio ・ビデオ:video ・画像:image ・URL:url ・日付と時刻:datetime ・埋め込みオブジェクト:embed ・日付と時刻:datetime/日付:date/時刻:time
テーブル名:mt_entry_meta mt_entry id
title text 100 test テストです mt_entry_meta entry_id type vchar_idx 2 field.cftext1 あいうえお
mt_entry_metaのフィールド名とカスタムフィールドの対応 フィールド名フィールドの意味カスタムフィールドの種類 vchar
文字列型URL vchar_idx 文字列型テキスト、ドロップダウン、ラジオボタン vdatetime 日付型 vdatetime_idx 日付型日付と時刻 vinteger 整数型 vinteger_idx 整数型チェックボックス vfloat 浮動少数点型 vfloat_idx 浮動少数点型 vblob バイナリー・ラージ・オブジェクト vclob 文字ラージ・オブジェクトテキスト(複数行)、埋め込みオブジェクト、 アイテム、ビデオ、オーディオ、画像 定義CustomFields::App::CMS::load_customfield_types()
テーブル名:mt_category_meta mt_category id
label 1 cat1 mt_category_meta category_id type vclob 1 show_fields 100 カスタムフィールドのID
テンプレートタグ・モディファイア
基本 カスタムフィールド用 テンプレートタグ
<$mt:EntryCFText1$>
記事カスタムフィールドの特定のデータを表示 <mt:Entries> <mt:if
tag="EntryCFText1"> <$mt:EntryCFText1$> </mt:if> </mt:Entries> 注:値が空または「0」のときはカスタムフィールドを表示しない
値が「0」の場合でもカスタムフィールドを表示したい <mt:if tag="EntryCFText1"
ne=""> <p><$mt:EntryCFText1$></p> </mt:if> <mt:ifNonEmpty tag="EntryCFText1"> <p><$mt:EntryCFText1$></p> </mt:ifNonEmpty>
記事カスタムフィールドの入力データをすべて表示 <mt:Entries> <mt:EntryCustomFields>
<mt:if name="__first__"><dl></mt:if> <dt><$mt:CustomFieldName$></dt> <dd><$mt:CustomFieldValue$></dd> <mt:if name="__first__"></dl></mt:if> </mt:EntryCustomFields> </mt:Entries>
カスタムフィールドの特定の画像を出力 <mt:Entries> <mt:if
tag="EntryCFImage"> <mt:EntryCFImageAsset> <img src="<$mt:AssetURL$>" /> </mt:EntryCFImageAsset> </mt:if> </MTEntries> 画像のカスタムフィールド作成時に 「MTEntryCFImageAsset」というタグが自動生成され る(厳密にはinit_app) CustomFields::Util::install_field_tags()
カスタムフィールドのすべての画像を出力 <mt:Entries> <mt:EntryCustomFields>
<mt:CustomFieldAsset> <img src="<$mt:AssetURL$>" /> </mt:CustomFieldAsset> </mt:EntryCustomFields> </MTEntries>
記事の記事画像とカスタムフィールド画像の振り分け <$mt:SetVar name="undef(cf_asset_ids)"$>
<mt:EntryImageAsset> <$mt:AssetID setvar="key"$> <$mt:SetVar name="cf_asset_ids{$key}" value="1"$> </mt:EntryImageAsset> <mt:EntryAssets> <$mt:AssetID setvar="key"$> <mt:if name="cf_asset_ids{$key}"> <$mt:AssetURL$> <mt:else> <$mt:AssetURL$> </mt:if> </mt:EntryAssets> カスタムフィールド画像 記事画像
カスタムフィールドの値でソート <mt:Entries sort_by="field:cftext1">
: </mt:Entries> ベースネームを設定 使えるのはブログ記事とウェブページのみ 内部処理で「field.cftext1」に変換→ mt_entry_metaテーブルで使用
カスタムフィールドの値を数値としてソート <mt:Entries> <mt:SetVarBlock
name="title"><$mt:EntryTitle$></mt:SetVarBlock> <mt:SetVarBlock name="entries{$title}"><$mt:EntryCFText1$></mt:SetVarBlock> </mt:Entries> <mt:Loop name="entries" sort_by="value numeric"> <$mt:GetVar name="__key__"$> <$mt:GetVar name="__value__"$> </mt:Loop> 参考URL:http://www.prartweb.com/blog/2011/04/mt-customfield-sort.php またはNumericCustomFieldsプラグインを導入
特定のカスタムフィールドの値で記事を抽出(1/2) <mt:Entries field:cftext1="100">
: </mt:Entries> ベースネームを設定 「field:xxx=""」はひとつだけ(現状複数フィルタは未対応) 使えるのはブログ記事とウェブページのみ
特定のカスタムフィールドの値で記事を抽出(2/2) ブログAにブログBの「cfcheckbox="1"」の記事だけを表示 ブログAのテンプレート
<mt:Entries include_blogs="3" field:cfcheckbox="1"> : </mt:Entries> ブログBのID ブログBのフィルタ条件
記事カスタムフィールドの入力フォームをすべて表示 <mt:Entries> <mt:EntryCustomFields>
<$mt:CustomFieldHTML$> </mt:EntryCustomFields> </mt:Entries>
記事カスタムフィールドの特定の入力フォームを表示 <mt:Entries> <mt:EntryCustomFields>
<mt:if tag="CustomFieldBasename" eq="cftext1"> <$mt:CustomFieldHTML$> </mt:if> </mt:EntryCustomFields> </mt:Entries>
HTML
カスタムフィールドのフォーム(例:テキスト) <input type="text"
id="customfield_cftext" name="customfield_cftext" value="" /> 固定文字列ベースネーム
日付と時刻のフォーム <input type="text"
id="d_customfield_cfdate" name="d_customfield_cfdate" value="" /> <input type="hidden" id="t_customfield_cfdate" name="t_customfield_cfdate" value="" /> <input type="hidden" id="d_customfield_cftime" name="d_customfield_cftime" value="" /> <input type="text" value="" name="t_customfield_cftime" /> <input type="text" id="d_customfield_cfdatetime" name="d_customfield_cfdatetime" value="" /> <input type="text" name="t_customfield_cfdatetime" value="" /> 日付を示す 日付 時刻 日付と時刻 時刻を示す
Tips・関連プラグイン
カンマ区切りのカスタムフィールドデータを処理したい Split http://www.koikikukan.com/archives/2009/01/20-015555.php
<mt:Entries> <$mt:EntryCFText1 split="," setvar="list"$> <mt:loop name="list"> <mt:SetVarBlock name="entries" key="$__value__"> <$mt:GetVar name="__value__"$>:<a href="<$mt:EntryPermalink$>"><$mt:EntryTitle$></a> </mt:SetVarBlock> </mt:loop> </mt:Entries> <mt:loop name="entries" sort_by="key"> <$mt:GetVar name="__value__"$> </mt:loop>
管理画面のカスタムフィールドの順番を固定したい MTAppjQueryによるカスタマイズ http://communities.movabletype.jp/2014/02/post-897.html
EntryPrefsFixer http://communities.movabletype.jp/plugins/2013/07/entryprefsfixer.html
1つのカスタムフィールドで複数のデータを扱いたい MoreCustomFieldsなど http://communities.movabletype.jp/2013/10/post-846.html
http://communities.movabletype.jp/2013/09/post-838.html
システムのカスタムフィールドでブログ別に表示を変えたい MTAppjQueryによるカスタマイズ http://communities.movabletype.jp/2013/09/post-837.html
カスタムフィールド(複数行)にTinyMCEを適用したい(1/2) TinyMCEField https://github.com/miyanaga/mt-tinymce-field
カスタムフィールド(複数行)にTinyMCEを適用したい(2/2) •プラグインインストール後の新規作成分のみ適用可 •ただしfield_typeを「textarea→richtext」に変更すればOK
または MTAppjQueryによるカスタマイズ http://qiita.com/BUN/items/3b924cfcfc0c689553bf
カスタムフィールドの種類を追加するプラグイン MoreCustomFields https://github.com/danwolfgang/mt-plugin-more-custom-fields
CustomFieldEx https://plugins.movabletype.jp/solmake/customfieldex.html NumericCustomFields http://www.h-fj.com/blog/archives/2009/02/21-145227.php GoogleMapsCustomField http://www.h-fj.com/blog/archives/2011/01/06-131537.php
MoreCustomFieldsの注意事項 例:画像挿入時にエラー mt-plugin-more-custom-fields-master/plugins/MoreCustomFields/static
mt-static/support/plugins/morecustomfields ckeditor/ app.css app.js jquery-ui-1.8.19.custom.min.js コピー ckeditor/ app.css app.js jquery-ui-1.8.19.custom.min.js 新たに作成
カスタムフィールド検索プラグイン SearchEntries http://www.h-fj.com/blog/archives/2010/04/12-092730.php
SearchEntryField https://github.com/alfasado/mt-plugin-search-entry-field CustomFieldSearch http://tec.toi-planning.net/mt/customfieldssearch/
カスタムフィールド情報のテンプレートタグを追加するプラグイン SupplementalCFTags http://www.h-fj.com/blog/archives/2014/02/21-133207.php
システム全体の設定を保存するカスタムフィールドを追加するプラグイン CustomConfig https://github.com/alfasado/mt-plugin-customconfig
カスタムフィールドの値でアーカイブパスを作成するプラグイン MappingBasedArchive https://plugins.movabletype.jp/taku_amano/mappingbasedarchive-1.html
管理画面のパフォーマンス向上プラグイン FastField https://github.com/alfasado/mt-plugin-fastfield
既存のテーブルにフィールドを追加するプラグイン AnotherCustomFields http://www.h-fj.com/blog/archives/2011/09/02-143708.php
•再構築のパフォーマンス良 •システムレベルでの追加
自作関連プラグイン
CommentCustomFieldプラグイン • コメント投稿フォームで画像のアップロードが可能
http://www.koikikukan.com/archives/2009/08/14-025555.php
EntryEditorプラグイン • 記事ページ上でデータ編集可能
• カスタムフィールドにも対応 http://www.koikikukan.com/movabletype/plugin/EntryEditor/
CustomFieldEditorプラグイン • カスタムフィールド一覧画面でカスタムフィールド作成・修正可能
http://www.koikikukan.com/movabletype/plugin/CustomFieldEditor/
CSVDataImExporterプラグイン • CSV形式で記事データ・カスタムフィールドデータを一気にインポート
• データの修正もエクスポート→インポートでOK http://www.koikikukan.com/movabletype/plugin/CSVDataImExporter/
CFDefinitionDataImExporterプラグイン • CSV形式でカスタムフィールド定義を一気にインポート
• カスタムフィールド定義の修正もエクスポート→インポートでOK http://www.koikikukan.com/movabletype/plugin/CFDefinitionDataImExporter/
おわり
Advertisement