Cómo Generar un Shortlink en WordPress: Una Guía Técnica Completa
Los shortlinks de WordPress son URLs abreviadas que redirigen a una publicación, página o tipo de publicación personalizada específica en su sitio. Siguen el formato https://yourdomain.com/?p=POST_ID y son generados de forma nativa por WordPress utilizando su sistema de reescritura de enlaces permanentes integrado, sin necesidad de ningún servicio externo.
Esta guía explica todos los métodos para generar, personalizar y rastrear shortlinks de WordPress, incluyendo flujos de trabajo del editor nativo, comandos WP-CLI, soluciones basadas en plugins y el comportamiento de redirección a nivel de servidor. Ya sea que esté ejecutando un entorno compartido ligero o una configuración de Hosting VPS completamente administrado, las técnicas a continuación se aplican directamente.
Qué Son los Shortlinks de WordPress y Cómo Funcionan
WordPress genera un shortlink para cada pieza de contenido en el momento en que se guarda como borrador o se publica. El shortlink se construye a partir del parámetro de cadena de consulta ?p= seguido del ID de base de datos interno de la publicación. Este ID es asignado secuencialmente por la tabla wp_posts en MySQL o MariaDB y nunca cambia, incluso si posteriormente modifica el slug o la estructura de enlaces permanentes de la publicación.
Cuando un visitante accede a un shortlink, el bootstrap index.php de WordPress se carga, el motor de reescritura analiza la cadena de consulta y la solicitud se redirige internamente al enlace permanente canónico utilizando una respuesta HTTP 301 Moved Permanently. Esto significa que los shortlinks son seguros para SEO: los motores de búsqueda siguen el 301 y atribuyen toda la equidad de enlace a la URL canónica.
Datos técnicos clave:
- Los shortlinks se resuelven completamente en la capa de aplicación PHP/WordPress, no a nivel del servidor web.
- El parámetro
?p=funciona independientemente de la configuración de estructura de enlaces permanentes. - Cambiar el slug de una publicación no rompe su shortlink.
- Eliminar y volver a crear una publicación asigna un nuevo ID, lo que invalida el shortlink anterior.
Método 1: Generar un Shortlink en el Editor Clásico
El Editor Clásico expone un botón dedicado Obtener Shortlink directamente en el meta box de publicación, ubicado encima del área del editor de publicaciones.
Paso a paso:
- Abra o cree una publicación en el Editor Clásico.
- Guarde la publicación como borrador o publíquela: el shortlink no puede generarse para contenido no guardado porque aún no existe ningún ID de publicación.
- Haga clic en Obtener Shortlink en el meta box de publicación. Un cuadro de diálogo modal muestra la URL del shortlink.
- Copie la URL del campo del cuadro de diálogo.
Si el botón Obtener Shortlink no está visible, puede haberse ocultado mediante Opciones de Pantalla. Haga clic en la pestaña Opciones de Pantalla en la parte superior derecha de la pantalla del editor y asegúrese de que la opción Slug o relacionada con el shortlink esté marcada. Algunos temas y plugins también eliminan este elemento de la interfaz mediante remove_action('admin_head', 'wp_shortlink_header') o el filtro pre_get_shortlink para devolver una cadena vacía.
Método 2: Generar un Shortlink en el Editor de Bloques Gutenberg
El editor Gutenberg eliminó el botón dedicado de shortlink de la interfaz predeterminada. Sin embargo, el shortlink sigue existiendo y es accesible a través de dos enfoques.
Enfoque A — Construcción manual a partir del ID de publicación:
- Abra la publicación en el editor Gutenberg.
- Observe la barra de direcciones del navegador. La URL contendrá
post=XXXXdondeXXXXes el ID numérico de la publicación. - Construya el shortlink manualmente:
https://yourdomain.com/?p=XXXXReemplace XXXX con el ID real de la publicación.
Enfoque B — Panel lateral de Configuración de Publicación:
- Abra la publicación en Gutenberg.
- En el panel de configuración Publicación del lado derecho, expanda la sección Enlace permanente.
- El ID de la publicación es visible en la URL del editor. Algunas configuraciones también muestran el shortlink en el panel Resumen si hay un plugin compatible activo.
Enfoque C — Restaurar el botón de shortlink mediante un fragmento de código:
Si desea recuperar el botón de shortlink en Gutenberg, agregue lo siguiente al archivo functions.php de su tema o a un plugin específico del sitio:
add_filter( 'get_shortlink', function( $shortlink, $id, $context, $allow_slugs ) {
return home_url( '/?p=' . $id );
}, 10, 4 );Este filtro garantiza que wp_get_shortlink() siempre devuelva un valor, lo que reactiva la visualización del shortlink en los componentes de interfaz compatibles.
Método 3: Generar Shortlinks mediante WP-CLI
Para los administradores que gestionan WordPress desde la línea de comandos, especialmente en un VPS con cPanel o un Servidor Dedicado sin configuración adicional, WP-CLI proporciona una forma directa de recuperar shortlinks sin acceder al panel de control.
Recuperar el shortlink de una publicación específica por ID:
wp post get 42 --field=url --path=/var/www/htmlListar todas las publicaciones publicadas con sus IDs y shortlinks:
wp post list --post_status=publish --fields=ID,post_title,post_name --format=tableUna vez que tenga el ID, el shortlink es simplemente https://yourdomain.com/?p=ID. También puede llamar a la función de WordPress directamente mediante WP-CLI eval:
wp eval 'echo wp_get_shortlink(42);'Esto genera la cadena del shortlink exactamente como WordPress la serviría, respetando cualquier filtro activo.
Método 4: Shortlinks Basados en Plugins con Slugs Personalizados y Seguimiento
Los shortlinks nativos de WordPress utilizan el formato ?p=ID, que es funcional pero no memorable ni personalizable con marca. Los plugins amplían esta capacidad de manera significativa.
Pretty Links
Pretty Links es el plugin de shortlinks más ampliamente utilizado en el ecosistema de WordPress. Almacena redirecciones personalizadas en una tabla de base de datos dedicada (wp_pretty_link y wp_pretty_link_clicks) y proporciona seguimiento de clics, datos de geolocalización e inyección de parámetros UTM.
Flujo de trabajo de configuración:
- Instale y active Pretty Links desde el repositorio de plugins de WordPress.
- Navegue a Pretty Links > Agregar Nuevo Enlace.
- Ingrese la URL de destino (el enlace permanente canónico de su publicación).
- Defina un slug personalizado, por ejemplo
go/my-post. - Seleccione el tipo de redirección:
301para permanente,302para temporal, o307para temporal con preservación del método. - Guarde. El shortlink se convierte en
https://yourdomain.com/go/my-post.
Nota técnica: Las reescrituras de Pretty Links se gestionan en la capa de aplicación de WordPress mediante add_rewrite_rule(), no a nivel de Apache o Nginx. Esto significa que cada visita al shortlink incurre en un arranque completo de WordPress. En sitios con mucho tráfico, esto puede agregar entre 50 y 200 ms de latencia por redirección en comparación con una RewriteRule a nivel de servidor. Si el rendimiento de las redirecciones es crítico, considere trasladar los enlaces de alto volumen a directivas map de Nginx o a un microservicio de redirección dedicado.
ThirstyAffiliates
Para los especialistas en marketing de afiliados, ThirstyAffiliates proporciona shortlinks con enmascaramiento de clics, vinculación automática de palabras clave y reglas de redirección basadas en geolocalización. Almacena los enlaces en tipos de publicaciones personalizadas (thirstylink) en lugar de una tabla separada, lo que lo hace compatible con los flujos de trabajo estándar de copia de seguridad y migración de WordPress.
Plugin Redirection
El plugin Redirection gestiona tanto shortlinks como redirecciones generales 301/302 desde una única interfaz. También captura errores 404 y sugiere destinos de redirección, lo cual es valioso durante las migraciones de sitios.
Comparación: Métodos de Shortlinks de WordPress
| Método | Slug Personalizado | Seguimiento de Clics | Requiere Plugin | Impacto en el Rendimiento | Mejor Caso de Uso |
|---|
| — | — | — | — | — | — |
|---|
| `?p=ID` nativo | No | No | No | Mínimo | Compartir interno rápido |
|---|
| Botón del Editor Clásico | No | No | No | Mínimo | Flujo de trabajo heredado |
|---|
| `wp eval` de WP-CLI | No | No | No | Ninguno (CLI) | Operaciones masivas, scripting |
|---|
| Pretty Links | Sí | Sí | Sí | Moderado (capa PHP) | Enlaces con marca, marketing |
|---|
| ThirstyAffiliates | Sí | Sí (avanzado) | Sí | Moderado (capa PHP) | Gestión de enlaces de afiliados |
|---|
| Plugin Redirection | Sí | Básico | Sí | Moderado (capa PHP) | Migraciones de sitios, gestión de errores 404 |
|---|
| Directiva `map` de Nginx | Sí | No (herramienta externa) | No | Casi nulo | Descarga de redirecciones de alto tráfico |
|---|
Consideraciones a Nivel de Servidor para el Rendimiento de los Shortlinks
En el hosting compartido, cada redirección de shortlink pasa por la pila completa de WordPress: PHP-FPM o mod_php se inicializa, wp-config.php se carga, se abre la conexión a la base de datos y el motor de reescritura resuelve la consulta. Para tráfico bajo o moderado, esto es completamente aceptable.
En sitios con mucho tráfico o cuando se ejecutan miles de shortlinks rastreados, la carga de consultas a la base de datos generada por el registro de clics puede convertirse en un cuello de botella. Las mitigaciones prácticas incluyen:
- Caché de objetos: Instale Redis o Memcached y configure
WP_CACHEenwp-config.php. Esto almacena en caché la búsqueda del destino de redirección y reduce significativamente las lecturas de la base de datos. - Registro de clics asíncrono: Configure Pretty Links para registrar clics de forma asíncrona mediante un proceso en segundo plano en lugar de bloquear la respuesta de redirección.
- Redirecciones a nivel de CDN: Si utiliza Cloudflare, puede implementar reglas de redirección masiva en el borde, omitiendo completamente WordPress para los enlaces de alto volumen.
- Bloques map de Nginx: Para entornos administrados por servidor, defina mapas de redirección directamente en la configuración de Nginx:
map $request_uri $redirect_target {
/go/my-post https://yourdomain.com/full-canonical-url/;
/go/another https://yourdomain.com/another-post/;
}
server {
if ($redirect_target) {
return 301 $redirect_target;
}
}Este enfoque sirve redirecciones en microsegundos sin invocar PHP.
SSL, Seguridad e Integridad de los Shortlinks
Los shortlinks servidos a través de HTTP que redirigen a destinos HTTPS son técnicamente funcionales, pero exponen a los usuarios a una posible ventana de degradación. Asegúrese siempre de que su sitio WordPress tenga un certificado SSL válido instalado para que los shortlinks se sirvan desde https:// desde el principio. Un shortlink con protocolo mixto (http://yourdomain.com/?p=42 redirigiendo a https://yourdomain.com/post-slug/) agrega un salto de redirección adicional y puede activar advertencias de seguridad del navegador en algunas configuraciones.
Si está ejecutando WordPress en la infraestructura de AlexHost, combinar su sitio con un Certificado SSL correctamente emitido elimina este problema por completo y garantiza que todos los shortlinks se resuelvan a través de una única cadena de redirección 301 segura.
Además, los endpoints de shortlinks pueden ser utilizados de forma abusiva en campañas de phishing porque el destino queda oculto. Si está utilizando Pretty Links o un plugin similar, habilite la opción noindex en las páginas de redirección y considere agregar un atributo rel="nofollow" a los shortlinks compartidos externamente para evitar rutas de rastreo no deseadas.
Recuperar el ID de Publicación de Forma Programática
Al crear integraciones personalizadas, por ejemplo, generando shortlinks dinámicamente en una respuesta de REST API o en una plantilla de correo electrónico, utilice la función nativa de WordPress:
$post_id = get_the_ID(); // Inside The Loop
$shortlink = wp_get_shortlink( $post_id );
echo esc_url( $shortlink );Fuera del Loop, pase el ID de publicación explícitamente:
$shortlink = wp_get_shortlink( 42 );La función wp_get_shortlink() aplica el filtro get_shortlink, lo que significa que cualquier plugin activo que modifique el comportamiento de los shortlinks será respetado automáticamente. Esto la convierte en la función correcta a utilizar en lugar de concatenar manualmente home_url('/?p=') con un ID.
Matriz de Decisión: Elegir el Enfoque de Shortlink Adecuado
Utilice esta matriz para seleccionar el método apropiado según sus requisitos operativos:
Use shortlinks nativos ?p=ID cuando:
- Necesite una solución rápida sin configuración para compartir internamente o para pruebas.
- No le preocupen las URLs con marca ni los análisis de clics.
- Esté en un plan de Hosting Web Compartido con recursos limitados y desee cero sobrecarga de plugins.
Use Pretty Links o ThirstyAffiliates cuando:
- Necesite slugs cortos con marca y legibles por humanos.
- Se requiera seguimiento de clics, parámetros UTM o atribución de conversiones.
- Esté ejecutando una operación de marketing de contenidos o un sitio de afiliados.
Use directivas map de Nginx o reglas de redirección de Cloudflare cuando:
- El volumen de redirecciones supere decenas de miles de visitas por día.
- Necesite latencia de redirección por debajo del milisegundo sin sobrecarga de PHP.
- Esté administrando infraestructura directamente en un Servidor Dedicado o un VPS de alto rendimiento.
Use WP-CLI cuando:
- Esté programando operaciones masivas de publicaciones o migraciones.
- Necesite recuperar shortlinks de forma programática sin una sesión de navegador.
Conclusiones Técnicas Clave
- Cada publicación de WordPress tiene un shortlink permanente en
/?p=POST_IDdesde el momento en que se guarda por primera vez; este ID nunca cambia a menos que la publicación sea eliminada y recreada. - El editor Gutenberg eliminó el botón de interfaz del shortlink pero no eliminó la funcionalidad del shortlink: la función
wp_get_shortlink()y el parámetro?p=siguen siendo completamente operativos. - Los shortlinks basados en plugins (Pretty Links, ThirstyAffiliates) operan en la capa de aplicación PHP; para escenarios de alto tráfico, traslade las redirecciones a Nginx o a una regla de borde de CDN.
- Sirva siempre los shortlinks a través de HTTPS para evitar cadenas de redirección de múltiples saltos y posibles advertencias de seguridad.
- Use
wp_get_shortlink()en código personalizado en lugar de construir la URL manualmente, para que los filtros de plugins activos sean respetados. - El registro de clics asíncrono y el caché de objetos Redis son las dos optimizaciones de mayor impacto para sitios con tráfico intenso de shortlinks.
- Audite periódicamente el crecimiento de la tabla de base de datos de su plugin de shortlinks:
wp_pretty_link_clickspuede acumular millones de filas en sitios activos, degradando el rendimiento de las consultas sin una indexación adecuada.
Preguntas Frecuentes
¿Cambiar el slug del enlace permanente de una publicación rompe su shortlink?
No. El shortlink está vinculado al ID de base de datos de la publicación, no a su slug. Cambiar el slug actualiza la URL canónica, pero el shortlink ?p=ID continúa resolviéndose correctamente mediante una redirección 301 al nuevo enlace permanente canónico.
¿Por qué falta el botón Obtener Shortlink en mi editor de WordPress?
En Gutenberg, el botón fue eliminado de la interfaz predeterminada. También puede estar oculto en el Editor Clásico mediante Opciones de Pantalla, o suprimido por un plugin que utiliza el filtro pre_get_shortlink devolviendo una cadena vacía. Use wp eval 'echo wp_get_shortlink(POST_ID);' mediante WP-CLI para recuperar el shortlink independientemente del estado de la interfaz.
¿Los shortlinks de WordPress afectan al SEO?
Los shortlinks nativos utilizan redirecciones HTTP 301 a la URL canónica, por lo que los motores de búsqueda siguen la redirección y atribuyen todas las señales de posicionamiento al enlace permanente canónico. Los shortlinks en sí mismos no se indexan. Asegúrese de que su plugin de shortlinks no establezca accidentalmente páginas de redirección como 200 OK con contenido escaso, lo que podría crear problemas de indexación.
¿Cuál es la diferencia entre un shortlink de WordPress y un acortador de URL como Bitly?
Los shortlinks de WordPress están alojados en su propio servidor y se resuelven en su propio dominio, preservando la confianza en la marca y manteniendo los análisis dentro de su infraestructura. Los acortadores de terceros como Bitly enrutan el tráfico a través de un dominio externo, lo que introduce una dependencia de un servicio de terceros y puede ocultar su marca en los enlaces compartidos.
¿Se pueden usar shortlinks en las respuestas de la REST API de WordPress?
Sí. Llame a wp_get_shortlink( $post->ID ) dentro de un callback de endpoint de REST API personalizado o use el filtro rest_prepare_post para agregar el campo del shortlink a las respuestas estándar de publicaciones. Esto es útil para configuraciones de WordPress headless donde la aplicación front-end necesita una URL corta para compartir sin construirla del lado del cliente.
