Esta guía está dirigida al equipo técnico que integra Nonli en el sitio web de un medio. Nonli también ofrece una página de configuración personalizada con los valores exactos de tu dominio.
1. Añade nuestras direcciones IP a la lista de permitidos#
Para evitar que se bloqueen nuestros rastreadores, permite las siguientes direcciones IP en tus servidores, firewall o WAF.
| OVH | Hetzner | |
|---|---|---|
| 51.77.188.71 | 130.211.76.244 | 167.235.24.250 |
| 51.83.116.244 | 104.155.62.41 | 167.235.65.20 |
| 51.255.141.214 | 34.77.85.234 | 116.203.102.173 |
| 51.68.75.27 | 77.42.68.147 | |
| 51.38.196.174 | 89.167.4.248 | |
| 54.36.13.238 | 89.167.13.146 | |
| 54.36.18.68 | 46.224.230.139 |
También puedes obtener la lista actualizada de forma programática: www.nonli.com/crawler-ips.json (estructurada) o www.nonli.com/crawler-ips.txt (texto plano).
2. Elige el dominio de tu SDK#
Por motivos de seguridad y de RGPD, el SDK debe ejecutarse en un subdominio de tu dominio principal. Crea un registro CNAME:
l.yourdomain.com → CNAME → tls.non.li
Importante: no actives el proxy de Cloudflare (nube naranja) en este registro. Entraría en conflicto con nuestro propio proxy de Cloudflare, así que déjalo solo como DNS (nube gris).
Nonli documenta una configuración del SDK que puede entrar dentro de la exención de consentimiento descrita por la CNIL. Desde el 22 de enero de 2025, nuestro SDK ya no instala ninguna cookie y nuestro acortador de enlaces no instala ninguna cookie de aplicación de Nonli; ninguno de los dos crea identificadores de visitantes. Los contadores del SDK y de los enlaces cortos se agregan por contenido, enlace o dominio; el tratamiento de la infraestructura técnica, como TLS, la seguridad o los registros de excepciones, se mantiene al margen de la medición de audiencia.
3. Instala el SDK#
Añade este script justo antes de la etiqueta de cierre </body> en todas las páginas de artículo y en cualquier página que pueda compartirse en redes sociales. Indica abajo tu subdominio del SDK y copia el fragmento generado.
You can also prefill it from the URL with ?domain=l.yourdomain.com.
1<script type="text/javascript">2window._nli=window._nli||[],function(){var n,e,i=window._nli||(window._nli=[]);i.loaded||((n=document.createElement("script")).defer=!0,n.src="https://l.yourdomain.com/sdk.js",(e=document.getElementsByTagName("script")[0]).parentNode.insertBefore(n,e),i.loaded=!0)}();3</script>Si una página que usa un bot no puede incluir el SDK, por ejemplo la página de quiosco que muestra la portada del periódico, añade su URL a URLs que monitorizar: consulta publicar la portada del periódico con un bot.
4. Añade las metaetiquetas Open Graph#
Las etiquetas Open Graph nos permiten leer tus artículos correctamente. Las fechas son lo más importante.
Si un medio necesita sustituir estos valores estándar o aportar campos personalizados de imagen y vídeo, usa la referencia completa de las metaetiquetas HTML de Nonli.
4.1. Etiquetas principales del artículo#
1<meta property="og:title" content="Article title">2<meta property="og:url" content="https://www.mysite.com/canonical-url-of-article.html">3<meta property="og:description" content="Article description">4
5<!-- These 3 meta tags are particularly important: -->6<meta property="og:type" content="article">7<meta property="article:published_time" content="2022-06-06T11:54:30Z">8<meta property="article:modified_time" content="2022-06-06T12:21:12Z">4.2. Etiquetas de imagen#
1<!-- Use large uncropped images > 1000px -->2<meta property="og:image" content="https://www.mysite.com/myimage.jpg">3<meta property="og:image:alt" content="Image description">Para las imágenes, usa visuales grandes y sin recortar de más de 1000 px. JPG y PNG son los formatos más seguros para los analizadores de metadatos, y la imagen debe pesar menos de 8 MB.
4.3. Etiquetas de sección y de palabras clave#
1<!-- article:section classifies content by section (category) -->2<meta property="article:section" content="Sport" />3
4<!-- article:tag classifies content with keywords, spread across several tags -->5<meta property="article:tag" content="keyword 1" />6<meta property="article:tag" content="keyword 2" />7<meta property="article:tag" content="keyword 3" />Usa un único article:section para la categoría principal y repite article:tag una vez por palabra clave.
5. Añade datos estructurados schema.org#
Añade JSON-LD en el <head> de la página.
5.1. NewsArticle#
NewsArticle es el objeto de datos estructurados principal. articleSection nos da las secciones del artículo y keywords nos da las etiquetas. Los autores suelen estar ya bien descritos, pero el objeto debe incluir al menos un autor.
1{2 "@context": "https://schema.org",3 "@type": "NewsArticle",4 "mainEntityOfPage": {5 "@type": "WebPage",6 "@id": "https://www.example.com/category/my-article.php"7 },8 // A unique identifier to avoid duplicate content very quickly9 "identifier": "123456",10 "headline": "Main article title",11 "alternativeHeadline": "Alternative title or article lead",12 "description": "Complete article description for SEO",13 "keywords": ["keyword1", "keyword2", "keyword3"],14 // It might be interesting to add articleSection to make it appear in the categories:15 "articleSection": ["Main category", "Secondary category"],16 "author": [17 {18 "url": "https://www.example.com/author",19 "@type": "Person",20 "name": "First Last",21 "jobTitle": "Journalist",22 "address": "City"23 }24 ],25 "datePublished": "2025-09-29T10:00:00Z",26 "dateModified": "2025-09-29T15:30:00Z",27 "isAccessibleForFree": true28}Usa isAccessibleForFree: false si el artículo está tras un paywall.
5.2. ImageObject#
Si el artículo tiene una imagen principal, inclúyela mediante el campo image de NewsArticle.
1{2 "@type": "ImageObject",3 "url": "https://www.example.com/images/hero.jpg",4 "width": 1200,5 "height": 630,6 "caption": "Image description"7}5.3. VideoObject#
Si un artículo contiene un vídeo, añade un bloque JSON-LD VideoObject aparte.
1{2 "@context": "https://schema.org",3 "@type": "VideoObject",4 "name": "Video title",5 "description": "Video description",6 "thumbnailUrl": [7 "https://www.example.com/video-thumbnail.jpg"8 ],9 "uploadDate": "2025-09-29T08:00:00+00:00",10 "duration": "PT1M54S",11 "contentUrl": "https://www.example.com/video/123/file.mp4",12 "embedUrl": "https://www.example.com/embed/123",13 "interactionStatistic": {14 "@type": "InteractionCounter",15 "interactionType": { "@type": "WatchAction" },16 "userInteractionCount": 564701817 },18 "regionsAllowed": "FR"19}6. Lista de comprobación final#
NewsArticle: incluyeidentifier,datePublished,dateModifiedy al menos unauthor.- Fechas: usa ISO 8601, en UTC (
Z) o con un desfase de zona horaria. - Open Graph: añade
og:type=article, las fechas de publicación y de modificación, unarticle:sectiony unarticle:tagpor palabra clave. - JSON-LD: expón las categorías con
articleSectiony las etiquetas con el arraykeywords. - Imágenes: usa un
og:imagegrande y sin recortar, añadeog:image:alte incluye las dimensiones de la imagen en el JSON-LD cuando sea posible. - Vídeos: añade
VideoObjectsolo cuando el artículo incluya un vídeo.
Para una guía de integración paso a paso, solicita una demo.
Si un artículo concreto sigue sin aparecer tras la configuración, sigue el diagnóstico de recopilación de contenido web.