WordPress.com Connect
Es una forma segura y fácil de que millones de usuarios de WordPress.com puedan acceder a tu web o aplicación. Al integrarse con WordPress.com Connect, los usuarios de WordPress.com pueden acceder rápidamente y comenzar a usar tu servicio. Su información de perfil se comparte con tu aplicación, ahorrándote las molestias de recopilar nombre, dirección de correo electrónico, etc. Incluso obtienes su foto de perfil de Gravatar.

Beneficios
Millones de usuarios: WordPress.com tiene millones de usuarios y sigue creciendo cada día. Al añadir WordPress.com Connect, te convertirás en parte de una gran familia facilitando a los usuarios de WordPress.com explorar nuevos servicios.
Compatible con el sistema de inicio de sesión que ya utilizas: WordPress.com Connect se puede usar por sí solo o como una opción de inicio de sesión complementaria al sistema de registro que utilizas. Una vez que un usuario se conecta, tendrás acceso a información de su perfil que puedes utilizar en tu propia aplicación.
Relación de confianza: Permite a los usuarios acceder con las mismas credenciales que utilizan todos los días en WordPress.com. Esto elimina la molestia de tener que recordar y gestionar un nuevo inicio de sesión para otro servicio.
Cómo empezar a usarlo
Lo primero que tienes que hacer es crear una nueva aplicación de WordPress.com para poder describir tu aplicación y cómo deberíamos comunicarnos con ella. La aplicación debería tener el mismo título que tu web, ya que esa información se usa en el formulario de inicio de sesión que ven los usuarios. Una vez configurado, recibirás tu CLIENT ID y CLIENT SECRET para identificar tu aplicación.
Integra tu aplicación siguiendo las siguientes instrucciones o utiliza los ejemplos de código en este proyecto de Github para implementarla en otros lenguajes (PHP, Python, Node.js, y quizá otros en el futuro).
Ejemplo de integración en PHP
Aquí tienes un ejemplo simple de cómo puedes conectar a un usuario de WordPress.com con tu web o aplicación y luego obtener su información de perfil.
Al crear tu aplicación de WordPress.com, habrás recibido varios elementos. Vamos a establecer esos como constantes para que podamos hacer referencia a ellos fácilmente. (Reemplaza los valores de CLIENT_ID, CLIENT_SECRET y REDIRECT_URL con los valores de tu aplicación de WordPress.com)
define( 'CLIENT_ID', 1234 ); define( 'CLIENT_SECRET', 'XXXXXXXXXXXX' ); define( 'REDIRECT_URL', 'http://example.com/wpcc.php' ); define( 'REQUEST_TOKEN_URL', 'https://public-api.wordpress.com/oauth2/token' ); define( 'AUTHENTICATE_URL', 'https://public-api.wordpress.com/oauth2/authenticate' );
Crear un botón de conexión
En los siguientes fragmentos de código, solo usaremos la constante CLIENT_ID y demás para denotar los valores que son únicos en tu aplicación de WordPress.com. Primero, necesitamos generar el botón en el que tus usuarios harán clic para conectarse a WordPress.com. Se requiere un token «state» que no se pueda falsificar para proteger la seguridad de tus usuarios. Crea la variable con un buen generador de números aleatorios y guárdala en tu servidor. El token se envía de vuelta a tu servidor una vez que el usuario se autentica y debes verificar que los tokens coincidan. El enlace del botón debe llevar a los visitantes a la URL de autenticación e incluir parámetros de consulta que describan tu aplicación.
<?php session_start(); $wpcc_state = md5( mt_rand() ); $_SESSION[ 'wpcc_state' ] = $wpcc_state; $url_to = AUTHENTICATE_URL . '?' . http_build_query( array( 'response_type' => 'code', 'client_id' => CLIENT_ID, 'state' => $wpcc_state, 'redirect_uri' => REDIRECT_URL ) ); echo '<a href="' . $url_to . '"><img src="//s0.wp.com/i/wpcc-button.png" width="231" /></a>';
Esto generará un botón así:

Solicitar un token de acceso
Cuando el usuario haga clic en el botón de conexión, se le llevará a un formulario pidiéndole que inicie sesión y explicándole qué información será compartida con tu aplicación.

Cuando lo haga, será enviado a la «URL de redirección» que has establecido en tu aplicación de WordPress.com (que es el valor de la constante REDIRECT_URL). Cuando se cargue esta URL, verifica que la variable de estado devuelta coincida con la almacenada localmente y también busca el parámetro code. Usando esta variable code, tu aplicación envía una solicitud a WordPress.com buscando un access_token permanente que puedes usar a partir de ahora para hacer referencia a este usuario. Puedes almacenar el access_token en tu aplicación para utilizarlo en el futuro.
<?php
require_once dirname( __FILE__ ) . '/defines.php';
if ( ! isset( $_GET[ 'code' ] ) ) {
die( 'Warning! Visitor may have declined access or navigated to the page without being redirected.' );
}
session_start();
if ( $_GET[ 'state' ] !== $_SESSION[ 'wpcc_state' ] ) {
die( 'Warning! State mismatch. Authentication attempt may have been compromised.' );
}
$curl = curl_init( REQUEST_TOKEN_URL );
curl_setopt( $curl, CURLOPT_POST, true );
curl_setopt( $curl, CURLOPT_POSTFIELDS, array(
'client_id' => CLIENT_ID,
'redirect_uri' => REDIRECT_URL,
'client_secret' => CLIENT_SECRET,
'code' => $_GET[ 'code' ],
'grant_type' => 'authorization_code'
) );
curl_setopt( $curl, CURLOPT_RETURNTRANSFER, 1 );
$auth = curl_exec( $curl );
$secret = json_decode( $auth );
$secret es un objeto que contiene el access_token que usarás para consultar la información del perfil de los usuarios.
stdClass Object
(
[access_token] => XXXXXXXXXXXXXXXXXXXXXXXXXXXX
[token_type] => bearer
[blog_id] => 0
[blog_url] => http://public-api.wordpress.com
[scope] => auth
)
Solicitar información del perfil del usuario
Después de obtener un access_token, debes autenticar al usuario en tu sitio local. Usa el access_token para solicitar información de su perfil a través del endpoint /me/ en WordPress.com.
<?php $access_token = $secret->access_token; $curl = curl_init( 'https://public-api.wordpress.com/rest/v1/me/' ); curl_setopt( $curl, CURLOPT_HTTPHEADER, array( 'Authorization: Bearer ' . $access_token ) ); curl_setopt( $curl, CURLOPT_RETURNTRANSFER, 1 ); $me = json_decode( curl_exec( $curl ) );
Una solicitud típica de información del perfil devolvería datos codificados en JSON con la siguiente información del perfil en un objeto:
{
"ID": 1,
"display_name": "Bob",
"username": "bobsmith",
"email": "[email protected]",
"primary_blog": 1,
"avatar_URL": "http://gravatar.com/avatar/xxxx?s=96",
"profile_URL": "http://en.gravatar.com/xxxx",
"verified": true
}
Autenticar al usuario
La flag verified en el perfil es true cuando el usuario ha verificado su dirección de correo electrónico en WordPress.com. Debes tenerlo en cuenta antes de usar el perfil. Si es false, sé prudente a la hora de confiar en la información y usarla de manera automatizada.
Con esta información, deberías consultar tu base de datos de usuarios e introducir al usuario si existe un registro. De lo contrario, puedes generar automáticamente una nueva cuenta o redirigir al usuario a un formulario de registro. Deberías prepoblar tantos campos como sea posible con la información de perfil anterior.
Restricciones de las aplicaciones de inicio de sesión
Si ya tienes aplicaciones de WordPress.com, no uses una aplicación conjunta para inicios de sesión e interacciones con un blog de WordPress.com. Los tokens de acceso generados a través del endpoint de autenticación utilizado en las solicitudes de inicio de sesión solo tienen acceso al endpoint /me/. Tus usuarios no podrán acceder a sus blogs si intentan iniciar sesión a través de la misma aplicación.
Última actualización: octubre 08, 2025