• 返信先: @自分 みなさんご意見ありがとうございます。
    その後、出来る限りの読み解きを試みたので、同じことを調べてたどり着いた人向けに結果を書いておきます。


    まずvalid_childrenは、昔でいうブロック要素を外からaタグで囲むような場合に、バリデーションで強制整形されるのを防ぐためのものですが、
    リスト系のタグ(ul,ol,dl)の整形にまつわる部分はTinyMCE内でプラグインという形で別途実装されていました。そちらがvalid_childrenに勝ってしまうという感じに見受けられました。

    構成ファイルはすべての処理がこまかく関数化されて恐ろしく深い入れ子になっており、私の知見では読み解ききれず。
    加えて、「親ul/ol/dlの直下に子li/dt/ddがある」という前提でolやulとひとまとめに書かれている箇所もありました。
    dl>div>dt,ddという3階層をありにするには、新しく分岐を設けてdl専用のプラグインを追加するくらいの変更が必要なのでは…という感触でした。


    サクッと無効化できないかなくらいに思っていたのに、これでは途方もないので、結局不本意ながらHTML側を、dl>divをdiv>dlに置き換えてとりあえずしのぎました。
    (実は最初からこうする余地があったんですが、できることならdl>divが許容されると便利だな~と前々から思っていたので、方策を探ってみた次第です)

    配布元に問い合わせるにもTinyMCE公式って本拠地アメリカだな~と思って腰が引けてしまいました。
    現在はバージョン6台が存在するようですが、MT本体も最新バージョンにアップデートしないと不具合が発生するようで、TinyMCE6ならdl>div問題が解決するかどうか確認していません。

    dl直下のdiv自体は、公式に認められているし、何かと便利でかなりよく使います。むしろ今回妥協策として採用した「子要素にdtが一つしかないdlを連続で並べる」というのはセマンティック的にも気持ち悪く、凄く負けた気分です。(CSSの変更が最小限で済む方策がそれしかなかったので…)
    MTはWordPressみたいにセキュリティ面で狙われにくいし、何かあっても静的ファイルが残るし、選ぶ意味あります。少なくともローカルの大企業や大学みたいな案件じゃ全然使っていますよ。
返信の条件を満たしていません。[条件を詳しく見る]