Есть ли способ получить доступ к базе данных WordPress в основном коде php - PullRequest
1 голос
/ 22 июня 2019

Чего я пытаюсь достичь: хранить данные в базе данных PHP и базе данных WordPress

например, есть две базы данных, A для сайта corephp и B для сайта wp. Теперь, когда пользователь регистрируется через сайт corephp, в базу данных A вносится штраф, а также как сделать такую ​​же запись пользователя в базе данных B, которая предназначена для WP, и не подключаться к сайту corephp в любом случае прямо сейчас.

Причина подключения обоих сайтов состоит в том, что на моем WP-сайте отображаются покупки по подписке на woocommerce, и мне нужно иметь эти пользовательские данные в базе данных WP, чтобы увидеть, какой пользователь зарегистрирован на какую подписку.

обновленный код:

$dir = getcwd().'/explore';
include $dir.'/wp-config.php';
include $dir.'/wp-load.php';
if ($f == 'register') {
    $register = Wo_RegisterUser($re_data, $in_code);
    if ($register === true) {
        wp_create_user($_POST['username'], $_POST['password'], $_POST['email']);
    }
}

1 Ответ

0 голосов
/ 22 июня 2019

Да, вы можете достичь. вам нужно включить wp-config.php и wp-load.php в ваш основной php-проект. После этого вам нужно вызвать функцию WordPress «wp_create_user» для вставки новых пользовательских данных в базу данных WordPress.

для более подробной информации. https://developer.wordpress.org/reference/functions/wp_create_user/

//include 'wp-config.php' and 'wp-load.php' in your core php project. Make sure you are passing the correct url of these two files.
include '/wp-config.php';
include '/wp-load.php';

$user_id = username_exists( $user_name );

if ( ! $user_id && false == email_exists( $user_email ) ) {
    $random_password = wp_generate_password( $length = 12, $include_standard_special_chars = false );
    $user_id = wp_create_user( $user_name, $random_password, $user_email );
} else {
    $random_password = __( 'User already exists.  Password inherited.', 'textdomain' );
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...