admin管理员组

文章数量:1130349

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

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

本文标签: Can39t add post when using HyperDB