Compartir datos de inicio de sesión / cookies entre múltiples instalaciones

4

Tengo una instalación de WordPress en la raíz del documento para un dominio , y luego una instalación adicional en un subdirectorio inmediato de esa instalación de manera que pueda usar diferentes temas para los dos. Quiero vincular los inicios de sesión de los dos sitios para que no tenga que iniciar sesión dos veces para usar los dos sitios.

Mis habilidades de codificación no son excelentes, por lo que se prefiere una solución fácil o un complemento del estante.

    
pregunta Jason 27.01.2014 - 21:48

2 respuestas

4

Puede compartir tablas de usuario entre diferentes instalaciones de WordPress instalando el segundo sitio ("Sitio B") para usar la base de datos del sitio original ("Sitio A"), y luego elegir un prefijo de tabla alternativo durante la instalación para mantener el resto de los datos por separado.

La segunda parte del problema es compartir las cookies de inicio de sesión entre las dos instalaciones (lo que WordPress usa para realizar un seguimiento de los datos de inicio de sesión / "sesión"). Para hacer esto, debe usar la misma ruta de acceso a las cookies para ambos sitios.

Después de la instalación, abra el archivo wp-config.php en la raíz de instalación del Sitio B y agregue (o reemplace) las siguientes líneas poco después de la configuración de la base de datos, modificándolas según sea necesario para que se ajusten a su configuración:

$cookiehash = md5("http://www.bradleycountypulse.com/");  // Use Site A's URL

define(CUSTOM_USER_TABLE,'wp_users');           //Change 'wp' to match the prefix set during
define(CUSTOM_USER_META_TABLE,'wp_usermeta');   //  Site A's installation
define('COOKIEPATH', '/');                      //This path should reference Site A's root
define('SITECOOKIEPATH', '/');                  //Should match 'COOKIEPATH'
define('COOKIEHASH', $cookiehash );

Tenga en cuenta que esto solo funcionará si las dos instalaciones se encuentran en el mismo dominio (¡el suyo lo hace!).

Una solución alternativa sería configurar todo el sistema como una única instalación multisitio .

Otra solución (aunque sea una que requiere más trabajo) sería utilizar plantillas de página personalizadas en una sola instalación.

    
respondido por el bosco 27.01.2014 - 22:09
0

He lanzado un plugin de wordpress basado en el siguiente artículo:

enlace

User Session Synchronizer le permite mantener al usuario conectado de una palabra a otra sincronizando los datos del usuario y sesión de cookies basado en una Correo electrónico verificado.

El correo electrónico del usuario está cifrado en función de la ip del usuario actual y de una clave secreta compartida por las instalaciones de wordpress sincronizadas.

Puedes encontrar el complemento aquí:

enlace

Y participa aquí:

enlace

    
respondido por el RafaSashi 09.09.2016 - 11:01

Lea otras preguntas en las etiquetas