We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 36592
    • 970 Posts
    私は皆さんと違ってシステム開発の専門家でもないですから、一般ユーザとしての評価しかできません。
    (PHPとMySQLの勉強をしているサンデープログラマーレベルです。)

    そういう目で見た場合、今のFDMは必要充分な完成度だと思いますよ。
    特に、フロントエンドからテンプレート変数まで含めてコンテンツ更新できるものはこれしかないと思います。
    何故公式リソースとして登録されないのかはわかりません。多分作者の人が登録してないだけだと思います。

    是非システム開発者レベルの目で見てみて下さい。
      • 6350
      • 421 Posts
      人から紹介してもらわないと自分で見つけることのできない英語力のなさ、ふがいなさを不満に思っている自分がいます。

      ただし紹介してもらったからといって責任を紹介してもらった人に押し付ける気はありません。採用するかどうかの決定は、すべて自己責任です。その為に今、時間をかけて色々検証中です。特に Tiny MCE が IE7 で使用できない件は FDM 側の問題ではなさそうなので現在保留中ですが、これはそのうち解決策が出てくるものだと思っています。とくに MEGU さんが解決済みのようなので。

      しばらくは補助機能としての位置づけですが web user に対応できるスニペットは他になさそうです。と思ってる、 smiley

      FDM (http://modxcms.com/forums/index.php/topic,14977.0.html)
      こちらのトピックを見る限り約2年かけて 0.1bまでしか進捗がないわけですが今でも続いている議論が僕の思いを裏付けるものです。

      ただし、不満点はいろいろ質問していくこともあると思いますので tkfm さん、よろしくお願いいたします。
      sama55 さんもすでにダウンロードして試してみたのではないのでしょうか?って、今後ともよろしくお願いいたします smiley

      蛇足ですが僕が PHP、CSS の勉強を始めたのはつい最近のことです、半年にもなりません。modx 以外の CMS ではデザイン以外プログラミングの知識はほとんど不要だったもので(^。^)y-.。o○ ←実はヘビースモーカー 昨年から大阪、梅田駅の灰皿まで撤去され自己否定された気分です(-_-;)
        • 26012
        • 324 Posts
        tkfmさん

        早速のお返事ありがとうございます。
        Quote from: tkfm at Feb 09, 2009, 09:20 PM

        そういう目で見た場合、今のFDMは必要充分な完成度だと思いますよ。
        特に、フロントエンドからテンプレート変数まで含めてコンテンツ更新できるものはこれしかないと思います。
        何故公式リソースとして登録されないのかはわかりません。多分作者の人が登録してないだけだと思います。
        以下の2点に大きな関心があります。
         ・Dittoとの関連
         ・多様な入力形式が指定可能なテンプレート変数がどこまで扱えるか、また、コアのロジックをどのような
          切り口で使っているか (特にここが興味津々)
        時間を見つけて少し研究してみようと思います。割り込んでしまってすみませんでした。
          • 6350
          • 421 Posts
          いきなりフォーラムの構成が変わってしまったようですね。雑談がなくなってしまいました。 :’(
          どこにいってしまったんでしょうか($・・)/~~~

          http://modxcms.com/forums/index.php#10
                   ↓
          http://modxcms.com/forums/index.php/board,36.0.html
            • 33488
            • 429 Posts
            なんか おかしくなってますね
            ちょっと階層がずれて存在しているようです
            http://modxcms.com/forums/index.php/board,116.0.html

            ひさびさに発言してみたり(^^;;

            http://modxcms.com/forums/index.php/topic,32914.msg200334.html#msg200334
            の件と何か関係しているのかも・・・。
              • 36592
              • 970 Posts
              いえいえ、こっちこっち... grin
              http://modxcms.com/forums/index.php/topic,32524.0.html
                • 6350
                • 421 Posts
                とりあえず FDM 使えそうな感じ

                今後の課題
                (1)テキストエリアを TinyMCE を使った blogContent に置き換える
                   NewsPublisher の &rtcontentのようなオプションがほしい

                (2)テキストで書き出す、または読み込む場合は改行を
                などに置き換える
                   これをやってくれないが不満、この辺は NewsPublisher の方が上
                  • 6350
                  • 421 Posts
                  テンプレート変数の扱いについて、お尋ねいたします。

                  今後の課題
                  (1)テキストエリアを TinyMCE を使った blogContent に置き換える
                     NewsPublisher の &rtcontentのようなオプションがほしい

                  まずはここで悩んでおります。
                  チャンクの fdmEform のなかで [+content+] の部分をテンプレート変数に置き換えるため FormBlog を参考に
                  <textarea name="content" id="content" rows="5" cols="50" eform="Du texte:string:0">[+content+]</textarea>
                  ↓
                  <label for="content">Content:[*blogContent*]</label>
                  のように置き換えました。これで新規作成、編集画面とも TinyMCE が表示されますが fdm.class.inc.php のなかで扱っている $fields[’content’] とのやり取り方法がどうしてもわかりません。

                  新規作成の場合には NewsPublisher を参考に $_POST[’tvblogContent’] のような方法で内容を取り出せそうですがその逆の編集時に [*blogContent*] へ [+content+] の内容を設定する方法はありますでしょうか。この部分も TinyMCE のプロパティーとしてのやり取り方法があればもっと簡単な方法がありそうなものだと思っています。

                  fdm.class.inc.php のなかではすべて $fields[’content’]、$fields[tvblogContent] のような配列に置き換えられておりテキストエリアで利用する場合には便利そうですが TinyMCE へ値をセットする方法がわかりません。

                  よろしくお願いいたします undecided
                    • 36592
                    • 970 Posts
                    私はRichTextエディターって好きじゃ無いので使ったことはありませんが、
                    FDMのフォーラムを読んだ記憶では、TinyMCEのスクリプトを直接FDM用のフォームに書いて、
                    contentフィールドに直接TinyMCEを適用していた気がしますね。
                    RichTextなTVで一旦データを入れてそれをcontentに移すって感じぢゃなかった気がします。

                    この投稿を見て頂くとイメージ沸くのかも? (JavaScript分からない私には無用ですが... tongue)
                      • 6350
                      • 421 Posts
                      tkfm さん、朝早くから起きて(・・? 該当フォーラムを探していただきありがとうございます。

                      一応、かなり参考にはなりましたがそのままでは動きませんでした。
                      http://modxcms.com/forums/index.php/topic,14977.msg174220.html#msg174220

                      でも結果からいうと JavaScript わからない僕でも簡単なコピペだけで目的を達成することができました。
                      そのままで動かなかった理由は TinyMCE のバージョンの違いかもしれません。そこで Add a Blog Entry で表示されたソースコードから展開されたスクリプトをそのまま持ってきて fdmEform の最後尾に貼り付け一部を変更しました。V3201ではxconfig.js が必要なようです。

                      このなかの elements : "tvblogContent", を elements : "content", に変更します
                      <script language="javascript" type="text/javascript" src="/modx/assets/plugins/tinymce3201/jscripts/tiny_mce/tiny_mce.js"></script>
                      <script language="javascript" type="text/javascript" src="/modx/assets/plugins/tinymce3201/xconfig.js"></script>
                      
                      <script language="javascript" type="text/javascript">
                      	tinyMCE.init({
                      		  theme : "advanced",
                      		  mode : "exact",
                      		  width : "520",
                      		  height : "350",
                      		  relative_urls : true,
                      		  document_base_url : "http://xxx.s78.coreserver.jp/modx/",
                      		  remove_script_host : true,
                      		  language : "ja",
                      		  elements : "tvblogContent",
                      		  valid_elements : tinymce_valid_elements,
                      		  extended_valid_elements : tinymce_extended_valid_elements,
                      		  invalid_elements : tinymce_invalid_elements,
                      		  content_css : "/modx/assets/templates/maruwa/editor.css",
                      		  entity_encoding : "named",
                      		  cleanup: true,
                      		  apply_source_formatting : true,
                      		  remove_linebreaks : false,
                      		  convert_fonts_to_spans : "true",
                      		  file_browser_callback : "myFileBrowser",
                      		  theme_advanced_blockformats : "p,h1,h2,h3,h4,h5,h6,div,blockquote,code,pre,address",
                      		  plugins : "style,advimage,advlink,searchreplace,print,contextmenu,paste,fullscreen,nonbreaking,xhtmlxtras,visualchars,media",
                      		  theme_advanced_buttons0 : "",
                      		  theme_advanced_buttons1 : "undo,redo,selectall,separator,pastetext,separator,search,replace,separator,nonbreaking,hr,charmap,separator,image,link,unlink,anchor,media,separator,cleanup,removeformat,separator,fullscreen,print,code,help",
                      		  theme_advanced_buttons2 : "bold,italic,underline,strikethrough,sub,sup,separator,separator,blockquote,bullist,numlist,outdent,indent,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,formatselect,separator,styleprops",
                      		  theme_advanced_buttons3 : "",
                      		  theme_advanced_buttons4 : "",
                      		  theme_advanced_toolbar_location : "top",
                      		  theme_advanced_toolbar_align : "left",
                      		  theme_advanced_path_location : "bottom",
                      		  theme_advanced_disable : "",
                      		  theme_advanced_resizing : true,
                      		  theme_advanced_resize_horizontal : false,
                      		  plugin_insertdate_dateFormat : "%Y-%m-%d",
                      		  plugin_insertdate_timeFormat : "%H:%M:%S",
                      		  extended_valid_elements : "iframe[*]",
                      		  button_tile_map : false 
                      
                      	});
                      	function myFileBrowser (field_name, url, type, win) {		
                      		var cmsURL = '/modx/manager/media/browser/mcpuk/browser.php?Connector=/modx/manager/media/browser/mcpuk/connectors/php/connector.php&ServerPath=/modx/&editor=tinymce&editorpath=/modx/assets/plugins/tinymce3201';    // script URL - use an absolute path!
                      		switch (type) {
                      			case "image":
                      				type = 'images';
                      				break;
                      			case "media":
                      				break;
                      			case "flash": 
                      				break;
                      			case "file":
                      				type = 'files';
                      				break;
                      			default:
                      				return false;
                      		}
                      		if (cmsURL.indexOf("?") < 0) {
                      		    //add the type as the only query parameter
                      		    cmsURL = cmsURL + "?type=" + type;
                      		}
                      		else {
                      		    //add the type as an additional query parameter
                      		    // (PHP session ID is now included if there is one at all)
                      		    cmsURL = cmsURL + "&type=" + type;
                      		}
                      		
                      		tinyMCE.activeEditor.windowManager.open({
                      		    file : cmsURL,
                      		    width : screen.width * 0.7,  // Your dimensions may differ - toy around with them!
                      		    height : screen.height * 0.7,
                      		    resizable : "yes",
                      		    inline : "yes",  // This parameter only has an effect if you use the inlinepopups plugin!
                      		    close_previous : "no"
                      		}, {
                      		    window : win,
                      		    input : field_name
                      		});
                      		return false;
                      	}
                      function myCustomOnChangeHandler() {
                      	documentDirty = true;
                      }
                      </script>

                      呼び出し部分はサンプルをそのまま使用しました。
                        CONTENT: 
                        <textarea name="content" cols="55" rows="15" id="content" eform="Content cannot be empty:html:1">[+content+]</textarea>

                      その結果、見事に TinyMCE は表示されましたが頭の中で音楽つきで回転木馬が回りだし、赤ちゃんの笑い声とガラガラの音まで混じって聞こえてきます。僕の頭の中がどうなったのか・・・ 一度体験してみるのも悪くないと思います。大丈夫、上記のとおりやればすぐに体験できます。

                      この難問の解決策を見つけるまでに1時間半・・夕食とテレビを見ながら時間をつぶしました。
                      (1) elements : "tvblogContent" はそのままにしておき変更してはならない。
                      (2) 呼び出し部分は以下のように変更しました。
                      <fieldset>
                      	<legend>Contenus</legend>
                      	<label for="content">Content:</label><br />
                      	<div class="MODX_RichTextWidget">
                      	<textarea id="tvblogContent" name="content" style="width:520px; height:350px;">[+content+]</textarea>
                      	</div>
                      </fieldset>

                      <textarea id="tvblogContent" と elements に指定された名前の部分で同期されるようです。
                      結果的にテンプレート変数をなくすことはできませんでしたが実際の入出力は[+content+] で指定された内容が読み書きされるようになりました。

                      結果から言えば fdm.class.inc.php その他の変更も必要なく、こんなに簡単に TinyMCE が使用できるとは思っていなかったので感激です。 laugh かかった時間は食事の時間をふくめてわずか3時間少々・・・
                      tkfm さん、あと数点の問題点が残っておりますのでもうしばらくお付き合いお願いいたします。<m(__)m>
                      明日にでも残った問題点をまとめてみようと思います。