【发布时间】:2022-02-02 23:43:02
【问题描述】:
我想允许所有 Alpine JS 组件(x-data、x-init 等)作为 TinyMCE 4 中 所有 HTML 标签的属性。
我尝试以不同的方式通过extended_valid_attributes 的规则添加它们,但一切都失败了。要么它们仍然从代码中被剥离,要么它们变得有效,但所有其他属性随后被剥离。
以下是我已经尝试过的一些示例,其中大部分是我在此处的其他 tinyMCE 问题的答案中找到的(例如TinyMCE 4 - add custom styles/classes/attributes to any HTML tag)并阅读了 tinyMCE 文档(https://www.tiny.cloud/docs-4x/configure/content-filtering/#extended_valid_elements、https://www.tiny.cloud/docs-4x/configure/content-filtering/#controlcharacters):
$alpineAttributes = 'x-data|x-init|x-show|x-text|x-html|x-model|x-for|x-transition|x-effect|x-ignore|x-ref|x-cloak|x-teleport|x-if|x-id';
$settings['extended_valid_elements'] = '*['. $alpineAttributes .']';
-> 通过* 选择所有元素:不起作用,alpine 属性仍然被剥离
$settings['extended_valid_elements'] = '@['. $alpineAttributes .'],div,a,p';
-> 至少 div、a 和 p 标记的属性不会再被剥离,但是 所有其他 属性通常允许用于这些标记三个现在被剥离,因为允许的属性列表没有得到扩展,而是被我的属性覆盖。
$settings['extended_valid_elements'] = '@['. $alpineAttributes .'],*';
-> 不起作用,alpine 属性仍然被剥离
$settings['extended_valid_elements'] = '@['. $alpineAttributes .']';
-> 不起作用,alpine 属性仍然被剥离
真的没有办法只扩展每个元素的允许属性列表,而不是用我在extended_valid_elements 中的规则完全覆盖它吗?
【问题讨论】:
标签: html tinymce tinymce-4 alpine.js