I try separate users table from rest of database. So i decide to use HyperDB. On localhost i have config like this:
$wpdb->add_database(array(
'host' => 'localhost', // If port is other than 3306, use host:port.
'user' => 'user',
'password' => 'pass',
'name' => 'database',
'write' => 1,
'read' => 1,
'dataset' => 'global',
));
$wpdb->add_database(array(
'host' => 'localhost', // If port is other than 3306, use host:port.
'user' => 'user',
'password' => 'pass',
'name' => 'users_database',
'write' => 1,
'read' => 1,
'dataset' => 'users',
));
$wpdb->add_callback('my_db_callback');
function my_db_callback($query, $wpdb) {
// Multisite blog tables are "{$base_prefix}{$blog_id}_*"
if ( preg_match("/^pr_users$/i", $wpdb->table) )
return 'users';
}
This pice od code work for users. But now i can't add a post od page. I just got a warning:
Warning: Creating default object from empty value in /var/www/html/project/wp-admin/includes/post.php on line 662
I disabled all plugins and set standard theme. I refreshed database and it looks like WP doesn't make "auto-draft" post. All functions on page works normally except adding post/page.
Is it problem with HyperDB config?
WP: 5.0.3, PHP: 7