对另一个WordPress站点的SQL查询

时间:2020-12-05 作者:user7734861

我在同一主机上有两个wordpress站点,数据库的主机/用户/密码相同。另一方面,我有两个不同的数据库和两个不同的前缀。我需要在site1上执行操作时,在site2上进行请求(选择并在之后更新),我看到我们可以这样做

$mydb = new wpdb(\'username\',\'password\',\'database\',\'localhost\');
$rows = $mydb->get_results("select Name from my_table");
但将其放入site1的功能中。php文件不是很安全,是吗?

如何以干净的方式执行此操作,并在访问函数时避免任何攻击数据库的尝试。php文件

1 个回复
SO网友:Zaim

将重要凭据放入functions.php 这不是个好主意。更好的方法是,您可以利用第二个站点的WP REST API来处理数据的GET和POST方法,并使用全局$wpdb 代码中的变量。

您可以通过制作自定义插件为其创建自定义端点,也可以将代码插入functions.php. 您可能需要配置permission_callback API端点的参数,该端点是在内部使用还是公开使用。

了解更多信息REST API Handbook

相关推荐

显示执行$wpdb->Insert()时发生的MySQL错误

我和内森有同样的问题($wpdb->last_error doesn't show the query on error), 显然,针对特定情况的解决方案是将数据类型更改为导致错误的列。。。但如果错误不同,例如,日期不正确,或字段不支持的空值,我可以显示当$ wpdb-> insert ($ this-> table, $ data_) 执行功能;我试图通过将该函数封装在try {} catch {} 但我没有预期的行为。我分享了我在类示例中使用的示例代码。php文件。<?