Comparta el sitio de wordpress entre dos tablas de usuarios diferentes

4 minutos de lectura

Tengo un sitio de wordpress y una aplicación de iphone para el mismo. Ambos tienen una base de datos común con diferentes tablas de usuarios.

1> mysite.com >> wp_user

2> aplicación para iPhone >> usuario_aplicación

lo que quiero es que el usuario de la aplicación pueda iniciar sesión en el sitio de WordPress. medio

1> el usuario del sitio solo puede iniciar sesión en el sitio

2> el usuario de la aplicación puede iniciar sesión en el sitio + aplicación para iPhone

¿Cómo puedo hacer que el usuario de la aplicación pueda iniciar sesión en el sitio?

Lo intenté depurando el script de inicio de sesión de WP, pero no puedo encontrar la forma correcta

Necesito ayuda de ustedes.

Gracias.

  • ¿No puedes simplemente copiar el registro de app_user a wp_user?

    – MitoThrazz

    30 de enero de 2014 a las 15:46

  • @MythThrazz no es apropiado, porque tengo que hacerlo de la misma manera para cada app_user agregado

    – Krunal Shah

    03/02/2014 a las 10:55

avatar de usuario
Syed Qarib

La funcionalidad requerida parece un poco complicada, puede haber más métodos posibles, pero el que recomendaré es:

  • Crear un formulario de inicio de sesión personalizado en el sitio de wordpress

  • Recupere el nombre de usuario y la contraseña y primero verifique si existen en su sitio o no. Si existen, simplemente inicie sesión (estos son usuarios del sitio) wp_signon El método se puede utilizar aquí.

  • Si no son usuarios de wordpress, verifique si son usuarios de aplicaciones móviles usando MySQL y buscando en la tabla de aplicaciones móviles, si existe, recupere su información y regístrelos en WordPress sitio wp_create_user se puede usar para ello, puede agregar metadatos personalizados para que sepa que estos son usuarios de la aplicación. Después de registrarse, cree una sesión de inicio de sesión usando wp_signon.

Le recomendaré que cree un complemento para esta tarea en wordpress.

¡Feliz codificación!

Puede usar la extensión de la API XML-RPC de WordPress para autenticar a su usuario de iPhone en wordpress. La explicación detallada y el código de trabajo básico se pueden encontrar en Ampliación de la API XML-RPC de WordPress (http://www.skyverge.com/blog/extendiendo-the-wordpress-xml-rpc-api/).

  • +1: ¡así es como funciona la aplicación oficial de WP para Android!

    – Ese chico brasileño

    31 de enero de 2014 a las 13:29

Recomendaría un complemento de inicio de sesión personalizado para lograr esto.

Puedes usar wp-renombrar complemento de inicio de sesión como punto de inicio para esto.

En este complemento, la parte de validación de credenciales de WP se maneja en el archivo rwl-login.php en la línea 449.

Del mismo modo, debe agregar un código para validar las credenciales móviles también en este caso de cambio. Si ha creado su código de acuerdo con los estándares de la aplicación móvil de WP, simplemente puede incluir el archivo de validación de inicio de sesión como se hace para la validación regular de WP en la línea 450

si no, haga su propia validación y redirija correctamente en ese caso. También puede hacer que su aplicación nativa registre el controlador de esa URL personalizada para que pueda capturar y manejar la redirección de manera adecuada.

Haga 2 grupos de usuarios, a saber:

  1. Usuario del sitio
  2. Usuario de la aplicación

Cuando el usuario intente iniciar sesión, verifique el grupo de usuarios al que pertenece y, en consecuencia, proporcione el acceso o muestre un mensaje de error.

Para realizar cambios en el usuario del sistema de inicio de sesión, el gancho de filtro “autenticar” o incluso mejor uso wp_authenticate

Pensando en voz alta: primero una confirmación del problema central:

Necesita un usuario para poder iniciar sesión en la aplicación de iOS y otorgar acceso al sitio de WP.

Consideración actual: en la aplicación iOS y wordpress, cree un hash de ID de usuario + contraseña + sal (o algo por el estilo). Use ese hash, enviado a través de la aplicación iOS a WP, para confirmar un usuario.

Sí, hay problemas de seguridad con respecto a esta información que se transmite por aire, al igual que su nombre de usuario y PW se transmitirían por aire.

Con un hash coincidente (use una tabla de búsqueda en WP, muy fácil), hay métodos en WP para forzar el inicio de sesión de un usuario (hecho eso, podría extraer ayudantes de código de mis archivos).

Problema: es necesario vincular el cambio de PW a la generación/actualización de hash. Hay ganchos de cambio de usuario en WP, muy solucionables.

Es bueno saberlo: casi todos los aspectos de la administración de usuarios, incluidos los permisos y los grupos, están disponibles a través de la API/el marco de trabajo de WP. Es posible (aunque no fácil) poner un cambio de PW en la aplicación de iOS que actualizará WP y mucho más.

Espero haberte ayudado, los mensajes son un poco confusos.

¿Ha sido útil esta solución?