【发布时间】:2014-12-07 14:31:48
【问题描述】:
我正在尝试将“onclick”对象添加到触发事件的单站点(即而不是多站点)WordPress 中的页面。代码是:
<a href="#" onclick="_speakpipe_open_widget(); return false;">Send a voice message</a>
在尝试保存代码时,WordPress 会剥离 onclick 对象离开:
<a href="#">Send a voice message</a>
另一个论坛上的用户suggested 认为此限制仅适用于多站点非超级管理员用户。同样,这是一个只有一个管理员用户的单一站点。
据了解,WordPress 将 HTML 中的“onclick”去掉,以防止恶意代码。不过,有人知道如何解决这个问题吗?
谢谢。
【问题讨论】:
-
我不确定是否有额外的 JS 过滤器,但 WordPress 曾经在过滤 HTML 之前查看一个名为
$allowedposttags的列入白名单的全局数组。您可以尝试创建一个插件,或将代码添加到主题的 functions.php 文件(如果仍然存在),以将锚节点的onclick属性列入白名单。