WP Manifestindependent plugin directory
manifest / users / magic-link-router

Magic Links Router

wordpress referer and semipublic access links generetor

by Elieser Alvarez · github.com/theguyintheshell/magic-link-router

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/theguyintheshell/magic-link-router/archive/refs/heads/master.zip

Magic Links Router (WordPress)

Crea enlaces mágicos (CPT) con token y vencimiento para permitir acceso semipúblico, propagar cookie y redirigir a una URL destino. Incluye shortcode de protección de contenido y un router que reconoce el token en query/cookie.

  • CPT: magic_link (no público, UI en admin).
  • Token: _magic_token (string).
  • Redirect: _magic_redirect (URL).
  • Payload: _magic_payload (texto/JSON opcional).
  • Vencimiento: _magic_expires_at (timestamp UNIX).
  • Cookie: mltk (guarda token para sesiones posteriores).

Compatibilidad legacy: sin namespaces, sin tipados modernos, sin static en closures. Probado en PHP 7.4/8.x.


Índice

  1. Instalación
  2. Uso rápido
  3. Estructura del plugin
  4. Campos del CPT
  5. Shortcode
  6. Router y flujo
  7. Cookies
  8. Hooks (Filters & Actions)
  9. Troubleshooting
  10. Changelog
  11. Licencia

Instalación

  1. Copia la carpeta magic-links-router a wp-content/plugins/.
  2. Activa Magic Links Router en Plugins.
  3. Verás el menú Magic Links en el admin.

Si migras desde una versión con namespaces/Composer, no es necesario vendor/. Esta versión carga todo por require_once.


Uso rápido

  1. Crea un Magic Link en Magic Links → Añadir nuevo.
  2. Define:
    • Token (ej. ABC123).
    • Redirect URL (ej. https://tusitio.com/curso).
    • Días de vigencia (entre 1 y 365).
  3. Visita/Comparte una URL con ?mltk=ABC123.
    • El router guardará una cookie con el token.
    • Redirigirá a la Redirect URL (si se definió).

Contenido protegido:


[magic_valid_semipublic enforce_redirect="false"]
  Este contenido requiere estar logueado o tener token válido.
[/magic_valid_semipublic]