Inicio de la sesión automáticamente con el administrador de WordPress y PHP

📑 Aquí podrás encontrar 👇

Administrador de WordPress y PHP

Esta publicación solo se incluirá en el programa que instalaremos una pequeña función en su sitio de WordPress. Esto, si se usa de manera segura, puede ser muy cómodo. Esta es una disertación para usar en sitios de WordPress que ofrecen una cuenta general para los usuarios que usan la sesión. Por ejemplo, en muchas demostraciones de contrapresión de WordPress, el autor creó una cuenta de "demostración" para que los clientes potenciales inicien una sesión y jueguen con su producto. El mayor de las veces, el autor simplemente muestra un aviso que zarove;

NOMBRE DE USUARIO: manifestación
CONTRACCIÓN: manifestación

Es un poco malo. ¿Estamos seguros de que podemos mostrarle un poco de un trabajo bueno y profesional? El fragmento de regalo se puede utilizar para iniciar una sesión automáticamente en el administrador de WordPress con estas credenciales.

Te apoyo;

  • Su sitio tiene una cuenta genérica para la cual los usuarios han iniciado una sesión.
  • Desce un inicio de una sesión de 'clic'.
  • Maximizar la conversación de la demostración del producto proporcional a una vía rápida y la efectividad de la demostración, minimizando los beneficios.
  • Deseo de dirigir a los visitantes directamente a la ubicación relevante (por ejemplo, página de configuración).

IMPORTANTE: No use esto para iniciar una sesión con preguntas reales; p. ej. Cuentas del administrador/editor, etc.
La utilidad es un fragmento con cuidado.

Eso sí, como ya hice en mis otros tutoriales, os hice un completo y fastidioso regalo para los que os salvéis que no sois fanáticos de la lectura y podéis comentar experimentos con él. El siguiente fragmento está escrito en forma independiente (mi preferencia personal).

Harry Bel-Thomas en Github

/*
Plugin Name: Auto Login
Plugin URI: http://hbt.io/
Version: 1.0.0
Author: Harri Bell-Thomas
Author URI: http://hbt.io/
*/

function autologin() {
	// PARAMETER TO CHECK FOR
	if ($_GET['autologin'] == 'demo') {
		
		// ACCOUNT USERNAME TO LOGIN TO
		$creds['user_login'] = 'demo';
		
		// ACCOUNT PASSWORD TO USE
		$creds['user_password'] = 'demo';
		
		$creds['remember'] = true;
		$autologin_user = wp_signon( $creds, false );
		
		if ( !is_wp_error($autologin_user) ) 
			header('Location: wp-admin'); // LOCATION TO REDIRECT TO
	}
}
// ADD CODE JUST BEFORE HEADERS AND COOKIES ARE SENT
add_action( 'after_setup_theme', 'autologin' );

USO

El nombre del usuario y la anticoncepción de la cuenta se especifican en el archivo del suplemento (código anterior), y para iniciar sesión, basta con visitar; http://ejemplo.com/wp-login.php?autologin=demo

DeberÃa ser redirigido medmediatamente a wp-admin, initiado sesión en la cuenta especificada. Sin embargo, si sus credenciales son incorrectas, debería ver la forma inicial de la sesión como normal.

PERSONALIZADOR

Este fragmento es muy fácil de personalizar. Muy bien, solo hay que editar 3 cosas, y todos estos cambios se realizan en el siguiente bloque de código (líneas 11 a 17 del código completo)

if ($_GET['login'] == 'dummy_account') {

        // ACCOUNT USERNAME TO LOGIN TO
        $creds['user_login'] = 'dummy';

        // ACCOUNT PASSWORD TO USE
        $creds['user_password'] = 'pa55word';

En la primera línea, comprueba la verificación condicional de la URL del metro. el bloque de codificación frontal; wp-login.php?login = dummy_account

Estos valores pueden ser los mismos que pueden evitar los Metros originales de WordPress, como 'salir', 'acción' y 'redireccionar_a'. iniciar una sesión en la cuenta "ficticia". Como problema, puede agregar, la séptima línea es específica del contraste. El contraste opuesto es 'pa55word'. Пълен estos estaráy listo para comentar.

EXTENSIONES

Por el momento, nuestro único fragmento está configurado para iniciar una sesión automáticamente a la vez. ¿Por qué queremos diferenciar las iniciales de la sesión por diferentes diferencias? Esto bastante rápido y fácil de hacer y no requiere que repita todo el fragmento una y otra vez. Tengo una vista para continuar con mi solución.

/*
Plugin Name: Auto Login
Plugin URI: http://hbt.io/
Description: Create convenient auto-login links to quickly login to generic accounts. Configure source code to make changes.
Version: 1.0.0
Author: Harri Bell-Thomas
Author URI: http://hbt.io/
*/

// Declare global var's
global $login_parameter, $accounts;

// THE PARAMETER TO CHECK FOR
// eg. http://exmaple.com/wp-login.php?param_name=account
$login_parameter = "autologin";

// ACCOUNT CODE BLOCK
$accounts[] = array(
				"user" => "demo",
				"pass" => "demo",
				"location" => "wp-admin",
			  );
// END ACCOUNT CODE BLOCK

// EDIT AND REPEAT CODE BLOCK FOR AS MANY ACCOUNTS AS NEEDED

// Another example iteration
$accounts[] = array(
				"user" => "tcwp",
				"pass" => "demo",
				"location" => "wp-admin/?tcwp-sent-me",
			  );


// SEE PREVIOUS EXAMPLE FOR DETAILS ABOUT THIS FUNCTION
function autologin() {
	global $login_parameter, $accounts;
	foreach ($accounts as $account) {
		if ($_GET[$login_parameter] == $account['user']) {
			$creds['user_login'] = $account['user'];
			$creds['user_password'] = $account['pass'];
			$creds['remember'] = true;
			$autologin_user = wp_signon( $creds, false );
			if ( !is_wp_error($autologin_user) ) 
				header('Location: ' . $account['location']); 
		}
	}
}
add_action( 'after_setup_theme', 'autologin' );

En esencia, esto es esencialmente lo mismo, pero con un cubo para cada uno descarado más una matriz de cuentas también. La anatomía de la función autóloga () es idéntica, con la excepción de la palabra que se puede responder (usando el libro frontal) para cada cuenta. Todos los relevantes son la matriz global. El ejemplo anterior está configurado para 2 cuentas, pero nuestro fragmento puede acomodar todo lo que necesitamos. Para agregar cuentas adicionales, personalidades simples y agregados de los siguientes bloques de código según sea necesario.

// ACCOUNT CODE BLOCK
$accounts[] = array(
				"user" => "anotheraccount",
				"pass" => "public_password",
				"location" => "http://YouCanPutURLsHereToo.com/",
			  );
// END ACCOUNT CODE BLOCK

También hay un notario que también pronuncia el nombre de un par de subterráneos a una variable global: este no es un caso, pero es simplemente simple eliminar todos los valores de las funciones autólogas ().

CONCLUSIÓN NO.

Este fragmento es solo una función de un diseño simple para una ligue, como un sitio de demostración del producto, pero tiene el potencial de usar los escenarios del comienzo de la sesión mucho más completos. El resto del código debería explicarse por sí mismo, pero también puede averiguar qué está pasando aquí, simplemente comentando la continuación de la idea de la idea / tiempo del comienzo del comienzo del comienzo del comienzo .

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir