WordPress - форум поддержки пользователей | русский ВордПресс

Помощь пользователям русского ВордПресс (WordPress)

Вы не зашли.

Объявление

#1 24.05.2008 17:33:04

wp_roma
Новичок
Зарегистрирован: 24.05.2008
Сообщений: 3

Одна база пользователей для двух разных WP

Здравствуйте!

Есть 2 инсталляции ВП 2.5.1, установлены в разные папки на одном сервере, используют единую базу, но с разными префиксами. Вопрос в том, как сделать, чтобы у обоих ВП была единая база пользователей - т.е. база того ВП, который был установлен первым? Очень нужно, чтобы пользователи, зарегистрировавшиеся в ВП1 не перерегистрировались в ВП2 и наоборот.

Заранее благодарю за ответ!

Неактивен

 

#2 24.05.2008 18:00:21

Ю.Б.
Прогрессор
Откуда: Харків, Україна
Зарегистрирован: 25.07.2007
Сообщений: 12116
Вебсайт

Re: Одна база пользователей для двух разных WP

http://mywordpress.ru/support/viewtopic.php?pid=11358


"Лучший способ убедить дурака, что он не прав, — позволить ему поступить по-своему." (Джош Биллингс)

Неактивен

 

#3 24.05.2008 20:50:49

wp_roma
Новичок
Зарегистрирован: 24.05.2008
Сообщений: 3

Re: Одна база пользователей для двух разных WP

Благодарю за ответ.

Манипуляции не помогли.

В данный момент файл wp-settings.php начинается так:

<?php

if ( defined('CUSTOM_USER_TABLE') )
    $wpdb->users = wp_name_users;

if ( defined('CUSTOM_USER_META_TABLE') )
    $wpdb->usermeta = wp_name_usermeta;

if ( !defined('WP_MEMORY_LIMIT') )
    define('WP_MEMORY_LIMIT', '32M');

if ( function_exists('memory_get_usage') && ( (int) @ini_get('memory_limit') < abs(intval(WP_MEMORY_LIMIT)) ) )
    @ini_set('memory_limit', WP_MEMORY_LIMIT);

Но пользователи первого ВП так и не появились в ВП 2.

Кстати, сразу после того, как я добавил в wp-settings.php указанные строки, модуль защиты от XSS-атак возругался. Пришлось его деактивировать.

Всё ли я сделал так, как Вы имели в виду?

Спасибо!

Неактивен

 

#4 24.05.2008 21:07:51

Ю.Б.
Прогрессор
Откуда: Харків, Україна
Зарегистрирован: 25.07.2007
Сообщений: 12116
Вебсайт

Re: Одна база пользователей для двух разных WP

Разумеется, НЕТ. Верните всё взад. В wp-config.php второго блога добавьте

Код:

define('CUSTOM_USER_TABLE', 'wp_users');
define('CUSTOM_USER_META_TABLE', 'wp_usermeta');

Предполагается, что префикс первого блога "wp_". Если другой - откорректируйте имена таблиц.


"Лучший способ убедить дурака, что он не прав, — позволить ему поступить по-своему." (Джош Биллингс)

Неактивен

 

#5 25.05.2008 09:03:21

wp_roma
Новичок
Зарегистрирован: 24.05.2008
Сообщений: 3

Re: Одна база пользователей для двух разных WP

Спасибо за информацию.

Файл wp-settings.php второго блога восстановлен из инсталляционного пакета.

В файл wp-config.php второго блога добавил указанные Вами строки.

В результате, при попытке авторизации в title страницы появлялась "500 внутренняя ошибка сервера", а в тексте сообщение: Вы не имеете достаточно прав для доступа к данной странице.

Когда я удалял добавленные строки, ошибки исчезали.

После этого я очистил таблицы второго блога в базе данных и переустановил второй блог, при чём указанные Вами строки были в WP-config. При установке было сообщение: "пароль администратора унаследован". После чего была затребована авторизация, которая прошла успешно. В админке второго блога пользователей первого блога я не увидел.

После этого я решил проверить, работает ли авторизация и для других пользователей первого блога, не только для администратора. Сделал logout для администратора, попробовал авторизоваться пользователем. И тут снова появилась ошибка 500. Т.е. и как администратор я уже не мог авторизоваться.

После этого я запустил другой браузер, "Оперу". попробовал авторизоваться как администратор - удалось. Увидел в админке список пользователей первого блога. Logout, авторизация как пользователь, ошибка 500.

Как Вы думаете, в чём может быть проблема в данном случае? Cookies?

Спасибо

Неактивен

 

#6 25.05.2008 09:22:08

Ю.Б.
Прогрессор
Откуда: Харків, Україна
Зарегистрирован: 25.07.2007
Сообщений: 12116
Вебсайт

Re: Одна база пользователей для двух разных WP

У меня пользователи наследуются, а вот роли - нет. Приходится вручную устанавливать для второго блога. И это очень странно. Буду разбираться.

И разбираться тут нечего! capabilities и user_level хранится раздельно по блогам, т.к. в meta-key используется префикс таблиц. Видимо, Создатели до конца не доработали механизм. Буду копать дальше.

Отредактированно Ю.Б. (25.05.2008 09:27:20)


"Лучший способ убедить дурака, что он не прав, — позволить ему поступить по-своему." (Джош Биллингс)

Неактивен

 

#7 04.05.2009 21:22:25

x9x9z8
Новичок
Зарегистрирован: 04.05.2009
Сообщений: 1

Re: Одна база пользователей для двух разных WP

а если разные базы данных?

Неактивен

 

#8 05.05.2009 07:15:39

Ю.Б.
Прогрессор
Откуда: Харків, Україна
Зарегистрирован: 25.07.2007
Сообщений: 12116
Вебсайт

Re: Одна база пользователей для двух разных WP

x9x9z8 написал:

а если разные базы данных?

Лишь бы руки были не одинаковые, не обе левые. :)


"Лучший способ убедить дурака, что он не прав, — позволить ему поступить по-своему." (Джош Биллингс)

Неактивен

 

#9 29.09.2009 20:04:27

FEBick
Новичок
Зарегистрирован: 11.11.2008
Сообщений: 19

Re: Одна база пользователей для двух разных WP

Если ещё кому-то нужно, то я нашёл решение)

Тоже были проблемы с объединением двух блогов - во втором блоге нельзя было войти в админку, хотя логин срабатывал.

Решению следующее:

1 шаг.
В файл wp-config.php ОСНОВНОГО блога добавляем строку

Код:

define('CUSTOM_CAPABILITIES_PREFIX', 'wp_');

2 шаг.
В файл wp-config.php второго блога (которые будет заимстовать юзеров) добавляем

Код:

define('CUSTOM_CAPABILITIES_PREFIX', 'wp_');
define('CUSTOM_USER_TABLE', 'wp_users');
define('CUSTOM_USER_META_TABLE', 'wp_usermeta');
define('COOKIE_DOMAIN', '.music-wall.ru'); // указываем свой домен. точку перед началом уберать не надо
define('COOKIEPATH', '/');

А так же копируем из конфига первого блога четыри ключа безопастности

Код:

define('AUTH_KEY',        'bla-bla-bla');
define('SECURE_AUTH_KEY', 'bla-bla-bla');
define('LOGGED_IN_KEY',   'bla-bla-bla');
define('NONCE_KEY',       'bla-bla-bla');

Шаг 3.
В файле wp-includes/capabilities.php второго блога ищем строку

Код:

$this->cap_key = $wpdb->prefix . 'capabilities';

и заменяем её на

Код:

if (defined ('CUSTOM_CAPABILITIES_PREFIX')) {
    $this->cap_key = CUSTOM_CAPABILITIES_PREFIX . 'capabilities';
    }
    else {  $this->cap_key = $wpdb->prefix . 'capabilities';
    }

Всё. Теперь всё работает как нужно ;)

Неактивен

 

#10 23.01.2010 18:40:25

akela
Новичок
Зарегистрирован: 23.01.2010
Сообщений: 4

Re: Одна база пользователей для двух разных WP

Роли все равно не наследуются. Использую два чистых WP 2.9.1. Кому нить удалось решить эту пролему? тестирую на денвере

Отредактированно akela (23.01.2010 19:43:33)

Неактивен

 

#11 25.01.2010 16:05:46

akela
Новичок
Зарегистрирован: 23.01.2010
Сообщений: 4

Re: Одна база пользователей для двух разных WP

Никто так и не придумал как сделать?

Неактивен

 

#12 13.04.2010 12:14:28

cantsave
Блогер
Зарегистрирован: 28.03.2010
Сообщений: 35

Re: Одна база пользователей для двух разных WP

Как сделать так чтобы роли наследовались? У меня осн сайт Wp MU а второй WP 2.6.

Неактивен

 

#13 03.07.2010 13:41:27

sorc
Блогер
Зарегистрирован: 10.04.2010
Сообщений: 62

Re: Одна база пользователей для двух разных WP

такая же проблема, как и у cantsave.

Неактивен

 

#14 14.08.2010 13:00:07

fil.diesel
Новичок
Зарегистрирован: 19.03.2010
Сообщений: 6

Re: Одна база пользователей для двух разных WP

Весь гуглик изюзал прежде чем настроить, ни как не получалось связать  два разных WP с одной базой пользователей.
Все методы описанные здесь перепробовал, безрезультатно! Пока не настроил в wp_options и в @_options
следующие параметры:( выставил одинаковые значения)
secret;
logged_in_salt;
auth_salt;
nonce_salt;
_transient_random_seed.
поправте если не так, но  меня работает!!!

Отредактированно fil.diesel (15.08.2010 11:29:06)

Неактивен

 

#15 26.02.2016 10:09:58

darkset
Новичок
Зарегистрирован: 26.02.2016
Сообщений: 1

Re: Одна база пользователей для двух разных WP

Если кому понадобится в 4.4.2

Код:

$this->cap_key = $wpdb->prefix . 'capabilities';

в файле wp-includes/capabilities.php больше не найти. Для того чтобы права также перенеслись на второй блог необходимо в его папке /wp-includes/class-wp-user.php в функции  _init_caps заменить

Код:

if ( empty($cap_key) )
            $this->cap_key = $wpdb->get_blog_prefix() . 'capabilities';
        else
            $this->cap_key = $cap_key;

на

Код:

if (defined ('CUSTOM_CAPABILITIES_PREFIX')) {
            $this->cap_key = CUSTOM_CAPABILITIES_PREFIX . 'capabilities';
        }
        else {  $this->cap_key = $wpdb->prefix . 'capabilities';
        }

В моем случае заработало в совокупности с выше описанными действиями.

Отредактированно darkset (26.02.2016 10:11:55)

Неактивен

 

#16 09.03.2016 22:35:20

mecep
Новичок
Откуда: Санкт-Петербург
Зарегистрирован: 07.03.2016
Сообщений: 1
Вебсайт

Re: Одна база пользователей для двух разных WP

Напишите, пожалуйста, что надо от и до сделать, чтобы заработало.
А то половины настроек уже в 4.4.2 не существует...

Отредактированно mecep (09.03.2016 22:35:38)

Неактивен

 

#17 28.10.2017 03:32:47

Gracerprook
Новичок
Откуда: Armenia
Зарегистрирован: 28.10.2017
Сообщений: 6
Вебсайт

Re: Одна база пользователей для двух разных WP

new slot
slots games
<a href="https://casinomegaslotos.com/">slot machine</a>
money slots
casino bonus
<a href="https://hotlistcasinogames.com/">play slots</a>
money online slots


casino online

Неактивен

 

Board footer

Работает на PunBB
© Копирайт 2002–2005 Rickard Andersson