インストールしてから随分時間が経ってしまいましたが、ようやくMODxを使った最初のサイトを公開しました。MCタイチ:Musicです。
テンプレート作りはLet’s enjoy MODxなどを参考にしながら、半年位前にほぼ出来ていたので、何をやったかあまり覚えていません(^^;
なので今回は、先日からコンテンツを流し込む段階で躓いた部分を、覚書として残しておこうと思います。
編集画面からのファイルのアップロード
記事の中には当然画像や音声ファイルを貼り付けたい時があります。ところが、MODxにはTinyMCEとFCKEditorという記事編集用プラグインが装備されているのですが、どちらを使ってもファイルのアップロードを拒絶されてしまいます。(TinyMCEでは画像URLの横のアイコンを押すとFCKEditorのウインドが出てきてアップロードできます)
MODxの「ファイルマネージャー」では問題なくアップできるので、FTP設定とかの問題ではないし、フォルダのパーミッションを許可しまくっても状況は同じです。
ネットを色々調べてようやく判ったのは次のことでした。
管理画面から
ツール>グローバル設定>インターフェイスとその他の機能>リソースパス、リソースURL
の項目が通常“assets/”か何かになっていると思いますが、ここはフルのパスを入れないといけないようです。つまり・・・
リソースパス:/home/user1/public_html/assets/
リソースURL:http://www.example.com/assets/
のように記入すべきなのです。そうしたらアップロードできるようになりました。
TinyMCEで編集するとタグが消える
貼り付けた画像にクラス名を付けたいときは、HTML編集画面でclass=”aaa”などと記入すれば出来ます。しかし、その画像を再びTinyMCEの画像ボタンで開くと、戻った時には先のクラス指定が消えてなくなっています。
この原因(仕様?)と対策は判っていませんので、私が出来ることは一旦画像にHTML編集をしたら、その後は画像ボタンで開かない事くらいですね。
もう一点これと似た問題を・・・
メディアボタンを押すと音声ファイルなどをQuickTime(FlashやWMPなども選択可)で貼り付けることが出来ます。ここに詳細オプションというのがあって「自動再生」のチェックマークを外しておくと、embedタグにautoplay=”false”が入って自動再生しなくなります。
ところが、一旦編集を終えてTinyMCEを閉じ再び開くと・・・先ほどのautoplay=”false”が消えてなくなっているではないですか!これは先ほどの画像ボタンより深刻で、編集画面を開くだけでアウトだから、触れないわけにも行きません。
そこで私は結局、Objectタグの中に
<param name=”autoplay” value=”false” />
を挿入することにしました。するとこのタグは消えずに残ってくれました。めでたしめでたし・・・?
不具合なのか仕様なのか、色々とありますねTinyMCE。FCKはまだ試していませんが、全く同じじゃなくても、別の似た問題がおきそうで怖い・・・
こうした「見たまま編集」ソフトって設計が難しいと思いますね。見たままをどうやってHTMLに落とし込むかが問題。ある程度自己判断で整理しないと収拾がつかないし、かといってやりすぎると必要なものがなくなってしまうと。