Решение:
Наша цель состоит в том, чтобы создать два WordPress сайтов, которые разделяют имена и те же пользователь. После того, как пользователь подписал один сайт
, она сможет получить доступ к другому сайту с той же ролью и возможностями.
Этап 1: Чтобы использовать одни и те же пользователи и таблицы usermeta, установки WordPress должны совместно использовать одну и ту же базу данных. Добавить префикс первой установки wordpress first_ и второй таблицы установки wordpress second_. в той же базе данных.
Шаг 2: Когда работает первый веб-сайт WordPress, мы можем отредактировать его конфигурационный файл. Открыть /first/wp-config.php
и добавьте следующие строки выше «прекратить редактирование» комментария:
$table_prefix = 'first_';
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
@ini_set('display_errors', 0);
// custom users and usermeta tables
define('CUSTOM_USER_TABLE', $table_prefix . 'users');
define('CUSTOM_USER_META_TABLE', $table_prefix . 'usermeta');
/* That's all, stop editing! Happy blogging. */
шаг 3: Мы закончили с первой установкой. Затем мы должны скопировать wp-config.php из первой установочной папки, а
вставьте ее в корневую папку второй установки.Будьте осторожны, чтобы изменить значение $ table_prefix соответственно:
открытым /second/wp-config.php.and добавить следующие строки выше «прекратить редактирование» комментарий:
$table_prefix = 'second_';
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
@ini_set('display_errors', 0);
// custom users and usermeta tables
define('CUSTOM_USER_TABLE', 'first_users');
define('CUSTOM_USER_META_TABLE', 'first_usermeta');
шаг 4: записи в wp-config.php для совместного использования файлов cookie.
//Share cookies
define('COOKIE_DOMAIN', '.xyz.com');
define('COOKIEHASH', 'aee53c017c29dc0d3ae37253fc8cbfd8');
шаг 5: Открыть таблицу "first_usermeta" и скопировать из колонки meta_key - first_capabilities и first_user_level в second_capabilities и second_user_level.
шаг 6: При запуске второй установки, мы должны установить несуществующий адрес электронной почты для пользователя с правами администратора, как WordPress находит ряд существующих пользователей из таблицы first_users.
Для более подробной информации https://kinsta.com/blog/share-logins-wordpress/.
Это работа для меня.
Большое спасибо за ваш быстрый ответ! Кажется, что это правильный способ сделать то, что я хочу. Я уже создал сеть, добавил как корневой, так и дочерний сайты. Мне нужно: когда кто-то регистрируется на корневом сайте, этот пользователь не должен будет снова регистрироваться на сайте ребенка (подсайта). Из того, что я читал, это возможно в Сети, но я должен найти способ сделать это. – manosim
Что-то вроде этого: http://wordpress.org/plugins/multisite-user-management/ – evanv
Пробовал это, но даже если в сетевых пользователях он показывает, что пользователь регистрируется на обоих сайтах, я до сих пор не могу войти в систему сайт (зарегистрирован с основного сайта). Также в бэкэнде подсайта пользователь не появляется. Это странно, потому что во время установки сети мне не нужно было добавлять ничего в wp-config на сайте. – manosim