MobableTypeの可能性(MT4.1 - CustomFields)
年末が近づき、来年の事業の方向性を考えている毎日ですが、
本日は主要業務の一郭となっているホームページ制作の
技術調査を1日かけていろいろと行いました。
私がホームページ作成に用いるツール(CMS)の一つに、
Movable Type(略称 MT)というものがあります。
12月14日に「MT 4.1」のβバージョンがリリースされましたので、
MTがインターネットをどのように変えていくか、
そしてどのようにビジネスに結びつけられるかを
MTを解析し、中身を知るという視点から考えてみました。
※※※※※※※※※※※※※※※※※※※※※※※※※※
本日の記事は技術情報に関するものですので、
私の普段のブログをお読みになっている方は、
この記事は飛ばしてお読みください。
※※※※※※※※※※※※※※※※※※※※※※※※※※
さて、MT4.1はMT4.0(MT4.01)と比較しますと、
「CustomFields」というツールが標準で加えられています。
「CustomFields」とは、
投稿記事(エントリー)に任意のフィールドを
追加・表示させることができるツールで、
MT3ではプラグインとして配布されていたものです。
MT4の「CustomFields」では、
設定したフィールドはDBの[mt_field]テーブルに保存されます。
ただ、各エントリーに記述したフィールド値は
DB上を探してみても、その姿が確認できません。
いろいろ調べていましたところ、
各フィールド値は、[mt_entry]テーブルに、
[entry_meta]フィールドの中にバイナリデータとして、
保存されている可能性が高いと推測しました。
検証のために、以下のプログラムソースを、
インデックステンプレートとして新規に作成します。
(パスやDBの設定等は各自の環境に合わせてください。)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
Transitional//EN" "http://www.w3.org/TR/xhtml1/
DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
id="sixapart-standard">
<head>
<meta http-equiv="Content-Type" content=
"text/html; charset=<$MTPublishCharset$>" />
<title><$mt:var name="title"$></title>
</head>
<body><?php
include_once('/virtual/xxxxx/public_html/mt/php/lib/
MTSerialize.php');$mt = new MTSerialize;
$dbhost = "localhost";
$dbuser = "DB_USER";
$dbpass = "DB_PASS";
$dbname = "DB_NAME";//MySQLに接続
if ( !$con = mysql_connect($dbhost, $dbuser,
$dbpass) ) {
print "MYSQL への接続に失敗しました。";
exit;
}//使用するDBを選択
mysql_select_db($dbname, $con);$sql = "select entry_meta from mt_entry
where entry_id = 1";//SQL文を実行し、結果のリソースを取得
$result = mysql_query($sql, $con);//配列を取得
$rec = mysql_fetch_row($result);//MySQLへの接続を切断
mysql_close($con);//バイナリデータを強引に出力
//print "rec = ";
//print $rec[0];$val = $mt->unserialize($rec[0]);
//ダンプ出力
//print "dump: ";
//print var_dump($val);//フィールド値表示
print $val['customfields']['entrydata1'];?>
</body>
</html>
テンプレートを再構築後に、
作成されましたページを確認してみましたところ、
フィールド値が出力されることを確認できました。
結論:
「CustomFields」のフィールド値は、
エントリー毎に[entry_meta]にバイナリデータとして保存される
これはちょっと応用が難しい形ですね。
もっと素直に独自テーブルにデータを持っていてくれれば、
もう少し面白いカスタマイズができたんですが。。
とはいえ、MT自体はホームページ制作に
革命をもたらしたともいえる素晴らしいツールであり、
今後も牽引していくCMSの一つであることに違いはありません。
要は使う側の創造力と技術力次第なんですよね☆(o≧▽゚)o



コメントする