Javascript按钮href注入


Javascript button href injection

在创建Wordpress网站的早期,我做了一个糟糕的决定,这样做让我的工作变得非常乏味。

基本上,我在一个网站上填充了1300多个页面,其中大约800个页面上有一个按钮,它没有链接到任何东西,而且它在所见即所得编辑器上,所以它对每个页面来说都是独一无二的。光明的一面?他们都属于同一类。所以我在想,我可以在和按钮相关联的标签中定位类,这就是我得到的:

<script>
document.getElementByClassName('et_pb_button et_pb_button_0 et_pb_module et_pb_bg_layout_light').href = "www.example.org/contact/";
</script>

我已经把它放在footer.php文件中,努力让它在每一页上运行,但它似乎不起作用。我错过了什么吗?

我并不反对其他涉及php或JQuery的解决方案,我只需要这个按钮来链接到一个页面,而不是一个杂散的#。

WYSIWYG编辑器将以特定方式保存此按钮。我建议不要在每个页面上都放一个脚本,只需创建一个小的php脚本来查询数据库,并用sql查询的魔力更新值。

创建到数据库的连接。从数据库中选择适当的行。找到与该按钮匹配的正则表达式,然后使用preg_replace(..)将该按钮替换为工作按钮。之后请确保正则表达式不匹配。更新值,然后继续。

如果脚本超时,您可以再次运行它,因为regex在您已经更改的按钮上不再匹配。

这是一个有点脏的修复,但比手动编辑所有这些页面要容易得多,也比仅仅因为出错就在每个页面上运行脚本要干净得多。

您可以尝试添加类似的属性

$('.et_pb_button.et_pb_button_0.et_pb_module.et_pb_bg_layout_light').attr("href","www.example.org/contact/");