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