Если базы одинаковые, тогда менять только url базы с localhost на удаленный.
Думаю, что нашёл ответ на свой вопрос.
В классе DB имеем:
public static function getInstance($master = true)
{
static $id = 0;
// This MUST not be declared with the class members because some defines (like _DB_SERVER_) may not exist yet (the constructor can be called directly with params)
if (!self::$_servers) {
self::$_servers = array(
array('server' => _DB_SERVER_, 'user' => _DB_USER_, 'password' => _DB_PASSWD_, 'database' => _DB_NAME_), /* MySQL Master server */
);
}
if (!$master) {
Db::loadSlaveServers();
}
Насколько я вижу, можно изменить настройку с
$master = true на $master = false,
тогда параметры подключения к БД будут браться из метода:
Db::loadSlaveServers();
т.е. как то так:
protected static function loadSlaveServers()
{
if (self::$_slave_servers_loaded !== null) {
return;
}
// Add here your slave(s) server(s) in this file
if (file_exists(_PS_ROOT_DIR_.'/config/db_slave_server.inc.php')) {
self::$_servers = array_merge(self::$_servers, require(_PS_ROOT_DIR_.'/config/db_slave_server.inc.php'));
}
self::$_slave_servers_loaded = true;
}
А настройки подключения к удалённой БД прописать здесь:
/config/db_slave_server.inc.php
и далее используем вот так:
$results = Db::getInstance(false)->ExecuteS($sql)
Что скажете?