为什么 TinyMCE 会删除我的自定义 mpdf html 标签?

Why does TinyMCE deletes my custom mpdf html tags?

我有一个带有 symfony 后端的 vue 应用程序。我使用 tinyMCE 编辑由 mpdf 生成的文档。在 mpdf twig 内容中,我想在某些页面上添加页脚,而有些页面没有页脚,所以我创建了 html 标签来启用或禁用此页脚。我的 HTML 这个自定义标签看起来像这样:

    <pagefooter
            name="NotLastPageFooter"
            content-left=""
            content-center="{PAGENO}/{nbpg}"
            content-right=""
            footer-style="font-size:10px">

    </pagefooter>

    <pagefooter
            name="lastPageFooter"
            content-left=""
            content-center="{PAGENO}/{nbpg}"
            content-right=""
            footer-style="font-size:10px">

    </pagefooter>

    <setpagefooter
            name="lastPageFooter"
            value="off"
    />

    <setpagefooter
            name="NotLastPageFooter"
            value="on"
    />

每当我通过 TinyMCE 编辑生成的文档时,它都会删除我由 mpdf 提供的 html 块,并且编辑后的文档没有页脚。在我的 tinyMCE 配置下面:

<editor
    @onKeyUp="onDocumentUpdate(document, index, $event)"
    :value="editor"
    entity_encoding="raw"
    output-format="html"
    :init="{
        allow_conditional_comments: false,
        allow_unsafe_link_target: true,
        convert_fonts_to_spans : false,
        keep_styles: true,
        custom_elements: 'pagefooter,setpagefooter',
        extended_valid_elements :'setpagefooter[name],setpagefooter[value],pagefooter[name],pagefooter[content-center],pagefooter[content-right],pagefooter[footer-style]',
        height: 600,
        menubar: false,
        plugins: [
            'advlist autolink lists link image charmap print preview anchor code',
            'searchreplace visualblocks code fullscreen',
            'insertdatetime media table paste code help wordcount'
        ],
        toolbar:
            'undo redo | formatselect | bold italic backcolor | \
            alignleft aligncenter alignright alignjustify | \
            bullist numlist outdent indent | removeformat | help code',

}"
/>

我怀疑您没有正确使用 extended_valid_elements。您不会在配置中多次重复标记。该文档有工作示例:

https://www.tiny.cloud/docs/configure/content-filtering/#extended_valid_elements

例如:

extended_valid_elements : 'img[class|src|border=0|alt|title]'

...或...

extended_valid_elements :'setpagefooter[name|value],pagefooter[name|content-center|content-right|footer-style]',

请注意,您将所有属性放在一组括号中。这是一个似乎适用于您的示例内容的示例:

http://fiddle.tinymce.com/iehaab