如何在 WordPress HTML 中包含“onclick”对象

2024-05-21

我正在尝试将“onclick”对象添加到触发事件的单站点(即而不是多站点)WordPress 中的页面。代码是:

<a href="#" onclick="_speakpipe_open_widget(); return false;">Send a voice message</a>

当尝试保存代码时,WordPress 会删除 onclick 对象,留下:

<a href="#">Send a voice message</a>

另一个论坛上的用户建议 https://wordpress.org/support/topic/2-administrator-users-visual-editor-strips-onclick-on-1-of-them此限制仅适用于多站点非超级管理员用户。同样,这是一个只有一名管理员用户的单一站点。

据了解,WordPress从HTML中删除了“onclick”,以防止恶意代码。不过,有人知道如何解决这个问题吗?

Thanks.


看来,在当前的 Wordpress(我使用的是 4.9.4)中,TinyMCE 直接在编辑器屏幕上进行过滤,而不是在提交表单时进行。 allowedtags 和 allowedposttags 似乎并不重要,所以上面的解决方案并不能解决我的问题。

我开发的方法使用tiny_mce_before_init过滤器以更改 TinyMCE 中允许的标签。诀窍是添加extended_valid_elements设置允许的元素的更新版本a.

首先,在页面中查看http://archive.tinymce.com/wiki.php/Configuration3x:valid_elements http://archive.tinymce.com/wiki.php/Configuration3x:valid_elements查找当前值a,现在是

a[rel|rev|charset|hreflang|tabindex|accesskey|type|name|href|target|title|class|onfocus|onblur]

并添加到最后onclick属性:

a[rel|rev|charset|hreflang|tabindex|accesskey|type|name|href|target|title|class|onfocus|onblur|onclick]

然后在过滤器函数中使用它,如下所示:

function allow_button_onclick_mce($settings) {
  $settings['extended_valid_elements'] =  "a[rel|rev|charset|hreflang|tabindex|accesskey|type|name|href|target|title|class|onfocus|onblur|onclick]";
  return $settings;
}
add_filter('tiny_mce_before_init', 'allow_button_onclick_mce');

你安装在你的functions.phpWordpress 中的文件。您可以通过切换编辑页面上的文本和视觉视图来查看它的运行情况。如果没有扩展列表,onclick 就会消失。有了它,它就留下来了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 WordPress HTML 中包含“onclick”对象 的相关文章

随机推荐

  • 使用java在网页中进行字符编码

    如何使用java找出网页中的字符编码类型 打开与 URL 的连接 使用URL openConnection http download oracle com javase 6 docs api java net URL html openC
  • Jenkins:如何使由于工作区问题而导致的失败构建的颜色从红色变为灰色?

    我们的詹金斯构建应该只是red当有一个构建代码时出现问题比如编译问题 如果存在管理员问题 例如工作空间已满 某些从属设备已关闭 我们需要将这份工作变成gray 表明有一个詹金斯本身的问题 但开发商应该not保持高度戒备 这是一个需要将作业变
  • Crashlytics Android Studio 插件无法初始化

    我正在运行 Android Studio 0 5 1 我已经下载了 Crashlytics Android Studio 插件并从光盘安装了它 当我重新启动 Android Studio 时 出现以下异常 Plugin com crashl
  • 将设置函数(setter)标记为 constexpr 的目的是什么? [复制]

    这个问题在这里已经有答案了 我无法理解将 setter 函数标记为的目的constexpr 自 C 14 起这是允许的 我的误解来自以下情况 我使用 constexpr c tor 声明一个类 并且我将通过创建该类的 constexpr 实
  • Perl regex:如何知道匹配数

    我循环遍历一系列正则表达式并将其与文件中的行进行匹配 如下所示 for my regex regexs ref LINE for rawfile regex do do something here next LINE 有没有办法让我知道我
  • 使用 equals 方法比较两个对象,Java

    我有一个对象数组 我想将它们与目标对象进行比较 我想返回与目标对象完全匹配的对象的数量 这是我的计数方法 public int countMatchingGhosts Ghost target int count 0 for int i 0
  • 在 ASP.NET MVC 中将模型从视图传递到控制器

    我正在 ASP NET MVC 中开发我的第一个应用程序 但遇到了一个我无法解决的问题 即使在阅读了整个互联网之后也是如此 因此 我有几个使用视图模型创建的视图 它们是报告 这些视图模型是根据用户选择标准填充的 我正在尝试构建一种接受模型并
  • 一段时间后终止线程的最 Pythonic 方法

    我想在线程中运行一个进程 它正在迭代一个大型数据库表 当线程运行时 我只想让程序等待 如果该线程花费的时间超过 30 秒 我想终止该线程并执行其他操作 通过终止线程 我的意思是我希望它停止活动并优雅地释放资源 我认为最好的方法是通过Thre
  • C# 处理标准输入

    我目前正在尝试通过命令行断开与网络文件夹的连接 并使用以下代码 System Diagnostics Process process2 new System Diagnostics Process System Diagnostics Pr
  • 由于缺少会话而在 Next.js 中使用 Next-Auth 进行重定向时,如何显示 Toast 通知? [复制]

    这个问题在这里已经有答案了 例如 假设我有一个名为internal tsx 的页面 其中包含 export const getServerSideProps GetServerSideProps async ctx gt const ses
  • Android httpclient文件上传数据损坏和超时问题

    我在 Android 中上传图像时遇到问题 我正在使用 apache httpmime 4 1 lib 代码是这样的 MultipartEntity reqEntity new MultipartEntity HttpMultipartMo
  • 使用@Transactional(readOnly = true) 有什么优点?

    我是初学者 据我了解 Transactional只需确保类或方法的所有内部工作都用注释 Transactional将被包装在一个事务中 并且来自外部源的所有调用都将创建一个新事务 但是为什么我们实际上需要在下面的存储库中使用这些注释以及使用
  • 口水累积正在更新一个不相关的事实

    在 Drools 中使用累积时 会针对未更新的事实评估并触发规则 规则如下 rule WidgetsPerUser when user User accumulate Widget checkIsUser user widgetCount
  • 开发人员实际上是否使用 vim 在 Windows 操作系统上编写代码(Java)? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何使用 jQuery 向表中添加新行,并为其分配递增的 id

    我有一个现有的 HTML 表格 它是用户输入 GPS 点的表单的一部分 用户还可以选择上传 GPS 数据点 我想要一个用户可以按下的按钮 其中一些 Javascript 会向表中添加一个或多个新行 但新行必须继续增加表中使用的名称和 id
  • jQuery 验证规则和消息 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我在设置 jQuery 验证的规则和
  • 如何以编程方式播放 16 位 pcm 数组 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有一个包含 16 位 pcm 值的短 数组 我希望能够在不添加任何标题 也不将任何文件保存到内存的情况下播放它 我知道我可能需要一个提供
  • 连接 3 三张表

    我有这个图表应该可以解释我的情况 我需要一些关于连接 3 个表的帮助 我不知道如何做这种事情 因此 我可以通过执行以下操作来经历一段检索记录的 while 循环 img src alt Album AlbumID 使用内部联接 http w
  • JavaScript 动画平滑滚动

    默认情况下 当您有这样的片段链接时 a href some url some fragment some text a 浏览器立即向下滚动到该片段 我该如何编程才能使用标准 JS 顺利地向下移动到该片段 这是一个例子 Example htt
  • 如何在 WordPress HTML 中包含“onclick”对象

    我正在尝试将 onclick 对象添加到触发事件的单站点 即而不是多站点 WordPress 中的页面 代码是 a href Send a voice message a 当尝试保存代码时 WordPress 会删除 onclick 对象