アファメーションで独立・起業・夢実現。「いきなり!社長宣言!!」-“夢は口に出すことで実現する!”というアファメーション:ライブラリー

2009年7月 1日

MTOSを使い倒すっ!

夢実現のアファメーションを実践する起業家にもっとも読まれているブログは?

MTOSにカスタムフィールドを。

表題のとおり、いまMTOS(MovableType Open Source)のカスタマイズをしています。

とりあえずフロント部分はおいておいて、独自のプラグインを作って
MTOSにカスタムフィールド的なものをつけて、独自タグが使えるようにする…という力技。
(っつっても、Perlとか分からないので、本を買ってきて見よう見まねだけどねw)

※通常版のMT4を使えば「カスタムフィールド」はデフォルトで使えるんだけど、
今回は一切お金をかけられないので、MTOSじゃないとダメなんっす。
(WordPressって選択肢もあるけど、使ったことがないし、よくわからないので。汗)

MTOSの管理画面のカスタマイズ時の備忘録。

んで、やっている過程で一個ひっかかったところ。

エントリーの管理画面にフィールドを表示させるためには、
「edit_entry.tmpl」とかに

<mtapp:setting
id="フィールド名"
label="ラベル名"
label_class="ラベルの表示位置">
表示するフィールド(<input>とか<textarea>~</textarea>)
</mtapp:setting>

っていう設定を書く。

んで、<mtapp:setting>~</mtapp:setting>の中は
自動的に複数のタグ(divとか)が挿入されて、管理画面にフィールドが挿入される。

んで、たとえば特定のフィールドに対する説明文とかをpタグとかで表示させたいと思って、
<mtapp:setting>~</mtapp:setting>の間にpタグとかを入れると、
その中身がtextareaの場合、本来自動的に挿入されるdivタグの一部がなぜか入らなくて、
タグの入れ子構造が崩れてしまい、結果として表示が崩れてしまう。
(中身がinputの場合は大丈夫だった。)

具体的な例:

<div class="textarea-wrapper"><textarea>~</textarea></div>
<p>テキストエリアの説明</p>

とコードが吐き出されるはずなのに、なぜか

<textarea>~</textarea></div>
<p>テキストエリアの説明</p>

と、divの開始タグがない状態になってしまう。(理由は不明)

回避方法は…<mtapp:setting>~</mtapp:setting>の間によけいなものは入れない。
(ぜんぜん“回避”じゃない。)

もしくは、<mtapp:setting>を使わないで、直接edit_entry.tmplに
テキストフィールドを書き込む。(こっちのほうがデザインとかカスタマイズしやすいかも。)

文系だってできるんだっ!

元来プログラムとか苦手…ウソです。

“苦手”じゃなくて“できない”だった。(VIVA!文系っ!!)

でも、自分が作ったフィールドが管理画面に表示されて、さらにそこに入力した値が
ページとかデータに反映されると…なんか楽しい。(完全にオタクの領域)

今は特定の機能をただ追加するだけだけど、
汎用的なプラグインとか開発できたら楽しいだろうなー。

…って、こんなマニアックなことは、普通に仕事してたら
あまりやる機会はないだろうけどねー。

とりあえず、日々ワクワクしながら生きていますっていう報告と、
制作過程の備忘録なんだにゃー。

アファメーション

「今やっている作業は、9月に公開するっ!」

この記事に関連する(かもしれない)書籍

 

投稿者 kuro : 2009年7月 1日 03:56 | ID:799

ページトップ△

ページトップ△