Descripción
TSO Link Inspector analiza enlaces en entradas, páginas y tipos de contenido personalizados publicados, y comprueba cada uno por HTTP para detectar enlaces rotos, redirecciones, URLs HTTP inseguras y errores de conexión. Todos los resultados se muestran en un panel donde puedes corregir enlaces directamente sin abrir el editor.
Características principales
- Escanea entradas, páginas y cualquier tipo de contenido personalizado.
- Detecta errores HTTP: 404, 410, 500, fallos DNS, errores SSL, timeouts y redirecciones.
- Edita URLs en línea para el contenido de entradas desde el panel de administración, o Ir a editar para comentarios, widgets, menús y términos en sus pantallas nativas de WordPress.
- Sugeridor inteligente de URL: prueba automáticamente la mejora a HTTPS, sigue cadenas de redirección y prueba variantes con y sin www.
- Desenlazar: elimina la etiqueta
<a>pero mantiene el texto visible. - Acciones masivas: volver a comprobar, desenlazar, marcar como OK o eliminar varios enlaces a la vez.
- Exportar CSV: exporta cualquier vista filtrada a una hoja de cálculo.
- Vista por artículo: haz clic en cualquier artículo para ver todos sus enlaces en un solo lugar.
- Entradas con problemas: resumen de artículos que contienen enlaces rotos, redirigidos o sin comprobar.
- Pestañas de alcance Interno / Externo para separar enlaces del mismo sitio y salientes.
- Filtros de calidad: texto de ancla vacío, anclas genéricas («haz clic aquí») y enlaces a entradas no publicadas.
- Ver la entrada en el enlace: abre la vista pública con el enlace coincidente resaltado (contenido de la entrada, URLs en texto plano y comentarios).
- URLs en texto plano en el contenido de la entrada se listan por separado (no se tratan como hipervínculos) con Ir a editar para abrir la entrada.
- Convertir a /path: acción opcional de fila y en lote para reemplazar URLs absolutas del mismo sitio por rutas relativas al sitio.
- Widget del escritorio con recuentos de rotos/sin comprobar y accesos directos.
- Exporta CSV y PDF para cualquier vista filtrada.
- Pestaña Ayuda de Configuración con documentación completa.
- Comprobaciones automáticas configurables: intervalos de recomprobación para enlaces correctos y rotos, más el tamaño del lote por hora.
- Detección de HTTP inseguro: marca enlaces activos que aún usan HTTP en lugar de HTTPS.
- Lista de exclusión: añade dominios o prefijos de URL para no escanear ni comprobar nunca.
- Continuar comprobación / Reiniciar desde cero: reanuda una ejecución detenida, o borra el progreso y vuelve a comprobar todo.
- Historial: pestaña de Configuración que lista cambios recientes de URL desde Editar, Sugerir, Convertir a /path y HTTPS (registro limitado; las filas más antiguas se eliminan automáticamente).
- Guardar sin verificar: Editar enlace / Sugerencia pueden guardar una URL aunque este servidor no pueda confirmarla (geo-bloqueo, muro de bots, tiempo de espera), con opción de ignorar ese dominio.
- Escanear imágenes e iframes: detecta opcionalmente
<img src>rotos y vídeos incrustados. - Escanear comentarios de usuarios: comprueba opcionalmente enlaces en comentarios aprobados.
- Campos personalizados (ACF): analiza opcionalmente campos URL añadidos por plugins como Advanced Custom Fields.
- Escaneo automático diario y comprobación por lotes cada hora mediante WP-Cron. Puedes cerrar el navegador mientras se comprueba.
- Alertas por correo electrónico para enlaces completamente rotos (sin redirección): envía un resumen tras cada comprobación automatizada o un digest periódico (7 / 15 / 30 días), con una dirección de aviso opcional.
- Nofollow en enlaces rotos: añade automáticamente
rel="nofollow"a enlaces rotos para que los buscadores los ignoren. - Conservar fechas de entrada: editar un enlace no actualiza la fecha de modificación.
- Compatible con LiteSpeed Cache, WP Rocket, W3 Total Cache, WP Super Cache, SG Optimizer, Breeze y Cloudflare.
- Exploración ampliada: URLs en texto plano en entradas, JSON de bloques Gutenberg, menús de navegación, medios adaptativos (srcset/picture), atributos
data-*de maquetadores de páginas, barras laterales de widgets, descripciones de taxonomías, plantillas/bloques reutilizables del Editor del sitio y URLs en texto plano en campos personalizados. - Fuentes de terceros: registra recopiladores de enlaces adicionales con
tsoliin_register_link_source(). - Exploración opcional de WooCommerce: URLs externas de productos, archivos descargables, imágenes destacadas/de galería, más una vista de Productos con problemas.
- Incluye traducciones al catalán y al español.
Cómo funciona
- Haz clic en Escanear ahora para extraer todos los enlaces de tus entradas.
- Haz clic en Comprobar ahora para enviar peticiones HTTP a cada URL (se ejecuta en el servidor; puedes cerrar el navegador). Si lo detienes a mitad de ejecución, usa Continuar comprobación para reanudar, o Reiniciar desde cero para borrar el progreso y volver a comprobar todo.
- Revisa los resultados usando las pestañas de filtro Rotos, Redirección, HTTP inseguro y otras.
- Corrige enlaces con Editar URL, Sugerencia, Desenlazar o Marcar como correctos desde cada fila. Los cambios recientes de URL aparecen en Configuración Historial.
Inteligencia de redirecciones
El plugin sigue manualmente toda la cadena de redirecciones para capturar el destino final real, no solo el último código HTTP. Ignora automáticamente redirecciones triviales (barras finales, tokens de CDN, páginas adjunto de WP, muros de login) para evitar falsos positivos.
Servicios externos
Este plugin no envía datos a servidores operados por el autor del plugin. HTTP y DNS se ejecutan desde tu servidor WordPress solo después de que un administrador haga clic en Explorar ahora, Comprobar ahora, Sugerencia, Actualizar a HTTPS, o cuando las comprobaciones programadas están activadas en Configuración.
Comprobaciones HTTP de URL almacenadas en tu sitio
Al ejecutar una comprobación, el plugin envía peticiones HTTP HEAD y, si hace falta, HTTP GET a cada URL almacenada http:// o https://. Datos enviados: la URL de destino, un User-Agent similar al de un navegador y las cabeceras estándar Accept / Accept-Language. Las respuestas se guardan solo en tu base de datos de WordPress (código de estado, URL de redirección, cadena de redirecciones).
Esos destinos son sitios web ya enlazados desde tu contenido, no un servicio elegido por el plugin. Términos de uso y política de privacidad: los de cada sitio de destino.
Consultas DNS
Antes de solicitar un nombre de host, el plugin puede resolver registros A/AAAA en el servidor (dns_get_record / gethostbynamel) para no contactar direcciones privadas, de bucle local o reservadas. Es una consulta DNS desde tu servidor; no se envían el contenido de las entradas ni las cuentas de usuario.
Capturas



Instalación
- Sube la carpeta
tso-link-inspectoral directorio/wp-content/plugins/. - Activa el plugin desde el menú Plugins de WordPress.
- Ve a Herramientas > TSO Link Inspector.
- Haz clic en Escanear ahora para ejecutar el primer escaneo y luego en Comprobar ahora para verificar todos los enlaces.
FAQ
-
¿Cuándo se ejecuta el escaneo automático?
-
Un escaneo completo se ejecuta una vez al día. La comprobación de enlaces corre cada hora en lotes pequeños. Ambos usan WP-Cron. Las próximas ejecuciones programadas aparecen arriba en el panel.
-
¿Puedo corregir enlaces sin abrir cada entrada?
-
Sí. Usa Editar URL para reemplazar una URL, Desenlazar para quitar la etiqueta de enlace manteniendo el texto, o Sugerencia para encontrar automáticamente una alternativa válida.
-
¿Es compatible con Gutenberg?
-
Sí. El plugin procesa
post_contentusando los filtros estándar de WordPress y funciona con el editor de bloques, el editor clásico y la mayoría de maquetadores. -
¿Escanea campos personalizados (ACF)?
-
Sí. Activa Campos personalizados (ACF / Meta) en Configuración. El plugin explora campos URL, HTML y texto, además de campos ACF almacenados como IDs (imagen, archivo, galería, enlace de página, relación) y páginas de opciones ACF. Puedes añadir claves a la lista de exclusión para omitir campos concretos.
-
¿Qué muestra el filtro HTTP inseguro?
-
Enlaces que funcionan (no están rotos) pero todavía usan
http://en lugar dehttps://. Usa el botón Sugerencia para actualizarlos con un clic. -
¿Qué es la lista de ignorados?
-
Una lista de dominios o prefijos de URL (uno por línea) que no se escanearán ni comprobarán. Útil para dominios que bloquean bots (Amazon, Facebook) o tu propio sitio.
-
¿Cambia la fecha de modificación de la entrada?
-
Solo si tú quieres. Activa No actualizar fecha de modificación en Ajustes para editar enlaces sin cambiar
post_modified. -
¿Qué hace «Marcar como correcto»?
-
Establece manualmente el estado del enlace como 200 OK sin hacer una petición HTTP. La entrada no se modifica. Útil para URLs temporalmente bloqueadas pero que sabes que funcionan.
-
¿Qué es Continuar comprobación frente a Reiniciar desde cero?
-
Si una comprobación se detuvo y quedan enlaces sin comprobar, Continuar comprobación reanuda donde se quedó (los enlaces ya comprobados se mantienen). Reiniciar desde cero borra el progreso de la comprobación y vuelve a comprobar cada enlace desde el principio. Continuar comprobación empieza de inmediato; Reiniciar desde cero pide confirmación.
-
¿Dónde está el Historial de cambios de URL?
-
Abre Herramientas TSO Link Inspector Configuración Historial. Lista los cambios recientes desde Editar enlace, Aplicar sugerencia, Convertir a /path y Actualizar a HTTPS (incluidas acciones masivas). El registro conserva un número limitado de filas (los más antiguos se eliminan automáticamente). Puedes borrar todos los registros del historial; esto no modifica las entradas ni la lista de enlaces.
-
¿Puedo guardar una URL cuando el servidor no puede verificarla?
-
Sí. En Editar enlace o Sugerencia, si este servidor recibe un geo-bloqueo, muro de bots o tiempo de espera, aún puedes guardar la URL. Opcionalmente marca ignorar dominio para añadir ese host a la lista de ignorados y omitirlo en futuras exploraciones/comprobaciones.
Reseñas
No hay valoraciones para este plugin.
Colaboradores y desarrolladores
«TSO Link Inspector» es un software de código abierto. Las siguientes personas han colaborado con este plugin.
ColaboradoresTraduce «TSO Link Inspector» a tu idioma.
¿Interesado en el desarrollo?
Revisa el código , echa un vistazo al repositorio SVN o suscríbete al registro de desarrollo por RSS.
Registro de cambios
2.4.9
- Fix: link list column headers (e.g. Last checked) could drift out of alignment with their own column depending on how long that site’s URLs/titles were; column widths are now fixed instead of recalculated from content.
- Improvement: Last checked now always shows dd/mm/yyyy 24h time, instead of following each site’s own date/time format setting.
- Fix: disabling WooCommerce product scanning no longer leaves «Product» permanently and silently checked in the Content types list; products are only scanned as generic content while WooCommerce scanning is enabled.
- Fix: the «Last checked» column header could wrap onto two lines, pushing its sort arrow below the text instead of beside it like the other columns; the column is now wide enough for the label to stay on one line.
- Improvement: added a Type filter dropdown (Link, Image, Iframe, Comment, Menu, etc.) to the link list, independent of the Status/Quality/Internal-External filters and the dashboard stat cards.
- Fix: enabling «Media (attachment)» under Content types scanned almost no media items, because WordPress stores attachments with post_status «inherit» (not «publish»); the scan now also accepts «inherit» for attachments.
- Fix: an absolute server filesystem path stored in another plugin’s postmeta (e.g. a backup-file path starting with «/home/…/public_html/…») could be mistaken for a site-relative URL and checked as a bogus link at the domain root (always reporting 404 even though the real file exists); such paths are now recognized and skipped.
2.4.8
- Fix: Mobile and web view in night mode
- Fix: Unresolved template placeholders (e.g.
${sec.image},{{state.logo}}) are no longer scanned as broken links; a rescan clears any already-stored placeholder rows.
2.4.7
- Fix: Scan deduplication treats Jetpack Photon image URLs (
i0.wp.com/i1.wp.com/i2.wp.com) with resize query params (?h=&w=…) as the same resource as the plain file URL (only one row is stored; broken duplicate no longer reappears as «Not checked» after each rescan). - Fix: URLs extracted from
srcset(and the plain-regex link fallback) are HTML-entity-decoded before being stored, so&no longer gets misread as the start of a URL fragment (...jpg#038;w=460&ssl=1) — this was creating extra unchecked duplicate rows for the same Jetpack Photon image on top of the dedup fix above.
2.4.6
- Improvement: Broader Generic anchor detection for English, Spanish, and Catalan (exact-match phrases such as “see more”, “pulsa aquí”, “fes clic aquí”); short ambiguous words like “web” / “entrar” / “visitar” are not added.
- Fix: Bulk actions respect quality/scope filters when removing rows, reload the list when needed, report real delete failures, and block a second bulk run while one is in progress.
- Fix: Check progress total follows the live link count (no inflated “X of Y”); queue chip “unchecked” matches the Unchecked card.
- Improvement: Unlink bulk label/confirm clarified; Help documents Upgrade selected to HTTPS.
- Fix: Edit link HTML preview updates Después when Nueva URL changes (request sequencing; failed replace fallback).
- Fix: Edit link can save absoluterelative spelling and #fragment-only changes (no longer “No changes to save”).
- Fix: Ignore-domain option is disabled for relative /path URLs (never suggests ignoring the site host).
- Fix: Post-revision setting: avoid duplicate revisions when enabled; toast only when a revision was really created; help text covers HTTPS and Unlink.
- Fix: Convert to /path: row and bulk use the same eligibility (post/meta/custom menu only); settings copy matches behavior.
- Fix: Preserve modified date no longer disables WordPress auto-revisions; nofollow matching tolerates spacing around href/rel.
- Fix: Delete all plugin records also clears History, abandons paused scan/check jobs (no ghost Continue), and clears last-check timestamps / immediate email queue.
- Fix: ACF/Meta scan: support Clone fields and Link fields returning a URL string; extract img/iframe/data-* URLs from HTML in meta; clarify SEO key exclusions.
- Fix: Additional link sources: scan block-theme Navigation (wp_navigation); extract images/media in widgets/terms/templates; Media Image widgets; clearer Settings labels (drop “Phase 2”).
- Fix: Stop calling attachment_url_to_postid() on every image during scan classification; prefer wp-image-ID / path lookup with request cache.
- Fix: History enforces the 500-row cap after legacy table migration and when opening the History tab; prune only runs after a successful history insert.
- Fix: Auto theme no longer flashes nightday on refresh near dusk (boot script now uses sunrise/sunset like the UI, not a fixed 07:00–20:00 window).
- Improvement: “Save even if…” checkbox wording matches HTTPS verification gate.
See changelog.txt in the plugin folder for older versions
