2

メール送信 Web アプリケーションがあり、テキストの書式設定のために、メール本文に WYSIWYG エディターを実装する必要があります。私は Tinymce と fckeditor を試しましたが、これらのエディターの主な問題は、それらが出力<div><span>、インライン スタイルでタグ付けすることです。Outlook や gmail などのほとんどの電子メール クライアントは、CSS を単純に切り取るため、役に立ちません。

私は TinyMCE を使用し、フォントの色に次の構成を使用しました。

<script>
    tinyMCE.init({
        theme_advanced_buttons1_add : "forecolor,backcolor",
        tinymce.init({selector:'textarea'});
    });
</script>

上記のように、<span style="font-color:#ff0000">Text here</span>テキストの一部に赤い色を追加しようとすると取得します。これは Gmail と Outlook の両方で削除され、受信者が受け取るのは黒のテキストです。フォントもフォントの色もありません。メール クライアントが理解できるのは古い<font>タグです。

私の質問: tinymce (または fckeditor) を微調整して<font>、代わりにタグを出力するにはどうすればよい<span>ですか? 彼らのドキュメントには有用な解決策が見つかりませんでした。また、誰かが他の電子メールに適したテキスト エディターを提案してくれると助かります。

同様の質問がここにありますが、解決策はありません: Create a html wysiwyg editor for edit email templates

4

5 に答える 5

5

これが古い投稿であることは知っていますが、TinyMCE の現在のバージョンには、まさにそれを行うlegacyoutputプラグインがあります。このオプションで初期化するだけです:

tinymce.init({
    plugins: "legacyoutput"
});
于 2015-10-30T12:41:09.527 に答える
0

「span」のすべてのインスタンスを「font」に置き換えるには、php str_replaceを使用することをお勧めします。

簡単な例:

$output = $_POST['yourForm']; // or whatever variable the editor returns
$output = str_replace('span', 'font', $output); // $output now has all instances replaced 

エディターは電子メール用に設計されていないため、電子メールに適した html のみを出力するには、(機能を制限するだけでなく) エディターで多数の関数を実行する必要があります。

于 2013-06-05T15:37:53.390 に答える