Usar $_SESSION en el código WordPress
Veamos cómo utilizar las variables $_SESSION en nuestro código WordPress
$_SESSION en WordPress
Hay ocasiones en los que al crear código en WordPress, pongamos por ejemplo cuando creamos un Shortcode en nuestro fichero functions, que necesitamos utilizar las variables de sesión de PHP: $_SESSION[«mivariable»].
Imaginad que queremos almacenar mientras ejecutamos un shortcode una variable de sessión que guarde la fecha en la que un usuario ha realizado una tarea. En nuestro código escribiremos algo como:
$_SESSION["fecha"]= date("Ymd");
Pero, no funcionará. ¿Qué está pasando?
El problema
El problema es que para utilizar las variables de sesión, $_SESSION[«fecha»], necesitamos llamar a la función session_start(). Pero frena que no es tan fácil.
No podemos llamar a la función session_start() en nuestro código, porque debe llamarse justo al inicio de la carga de la página. Y si lo hacemos en nuestro código de ShortCode, NO FUNCIONARÁ.
Entonces, qué hacemos.
La solución
Demos llamar a la función session_start() justo al inicio de la carga de la página. Cómo podemos hacerlo en WordPress? Pues añadiendo la acción que llame a la función justo en el init.
Vamos, que tenemos que añadir el siguiente código en el functions.php de la plantilla que tengáis.
/* === SESSION START === */
function register_my_session() {
if( !session_id() ) { session_start(); }
}
add_action('init', 'register_my_session');
Si estás leyendo este código es que dominas el desarrollo de WordPress, y por ello, no profundizo más. Son meramente apuntes que nos guien.
Si has encontrado interesante este artículo sobre cómo usar variables de sesión $_SESSION en WordPress, podéis visitar nuestra sección de Tutoriales WordPress en castellano.
Para más información: