Ir directamente al contenido

Ajustes de cookies

Elija por tipo qué cookies permite. Puede cambiar su elección en cualquier momento en Ajustes de cookies, al pie de cada página. Declaración de privacidad

Necesarias

Siempre activadas

Necesarias para iniciar sesión, conservar su carrito y recordar sus preferencias. Siempre están activadas.

¿Qué cookies?
  • weboke_sessie, weboke_klant, weboke_remember: su sesión y mantener la sesión iniciada
  • weboke_basket: su carrito
  • wkBtwIncl: mostrar los precios con o sin IVA
  • wok_cookies: su elección de cookies, 12 meses

Mide qué anuncio lleva a una visita o a un pedido, para no pagar por anuncios que no sirven de nada.

¿Qué cookies?
  • Google Ads a través de Google Tag Manager (_gcl_au, _gcl_aw), hasta 90 días
  • OpenAI Ads, anuncios en ChatGPT
  • wok_aff: a través de qué socio llegó a nosotros (programa de afiliados), 60 días

4,6

País e idioma

Cada país tiene su propio sitio, con los precios y el IVA de ese país.

Ver

Módulo 5 · 5.2

LocalBusiness: los datos de su empresa en JSON-LD

Módulo 5: Datos estructurados · Tiempo de lectura: 13 minutos

Objetivo de aprendizaje: Después de esta lección podrá escribir y evaluar un bloque LocalBusiness en JSON-LD, con las propiedades obligatorias y recomendadas según Google y el subtipo correcto de schema.org.

Conceptos clave: LocalBusiness, subtipo (Florist, Bakery, Dentist, ...), obligatorias: name y address, PostalAddress (streetAddress, postalCode, addressLocality, addressCountry), recomendadas: telephone, url, openingHoursSpecification, geo, image, priceRange, sameAs, openingHours como texto, una única fuente de verdad

Por qué importa este bloque

En la lección 5.1 vio que Google utiliza los datos estructurados para entender su página. Para una empresa con tienda, consulta o taller, el bloque más importante es LocalBusiness: quién es usted, dónde está, cómo llamarle y cuándo abre. Google menciona como posible uso el panel de conocimiento en la Búsqueda y en Maps cuando alguien busca su empresa.

El bloque no sustituye a su Perfil de Empresa de Google (módulo 6). Es una de las fuentes de las que los buscadores obtienen sus datos. Por eso debe decir exactamente lo mismo que su perfil, su página de contacto y sus fichas en directorios. La lección 6.4 vuelve sobre este tema.

Elegir el tipo correcto

Empiece por preguntarse: ¿qué tipo de empresa soy? LocalBusiness tiene en schema.org treinta subtipos directos, y por debajo muchos más. Algunos ejemplos:

EmpresaTipoRuta en schema.org
FloristeríaFloristLocalBusiness > Store > Florist
PanaderíaBakeryLocalBusiness > FoodEstablishment > Bakery
DentistaDentistLocalBusiness > Dentist
PeluqueríaHairSalonLocalBusiness > HealthAndBeautyBusiness > HairSalon
FontaneroPlumberLocalBusiness > HomeAndConstructionBusiness > Plumber
ContableAccountingServiceLocalBusiness > FinancialService > AccountingService

Google pide el tipo más específico que encaje. Si no encuentra ninguno, utilice el propio LocalBusiness. Si su empresa hace dos cosas (una panadería con cafetería), @type puede ser una lista: ["Bakery", "CafeOrCoffeeShop"]. Fíjese en la escritura: los tipos empiezan por mayúscula y se escriben exactamente como en schema.org. Bloemist, florist o Flower shop no existen; un lector no reconoce ese tipo.

Busque un tipo en https://schema.org/<Type> o en la lista completa. Si la página existe, el tipo existe.

Obligatorio y recomendado según Google

Para una empresa local, Google solo indica dos propiedades obligatorias:

  • name: el nombre de la empresa, tal como aparece en su fachada y en su perfil;
  • address: la ubicación física, como PostalAddress. Google pide rellenar el mayor número posible de campos.

Y una serie de propiedades recomendadas. Las más importantes para una pequeña empresa:

PropiedadQué debe contenerAtención
telephoneEl número principalCon prefijo del país y de la zona, por ejemplo +31 33 000 0000
urlLa dirección de la página de este establecimientoDirección completa con https://, y debe funcionar
openingHoursSpecificationHorario por díaVéase más abajo
geoGeoCoordinates con latitude y longitudeNúmeros, al menos 5 decimales
imageFoto(s) de la empresaDirecciones que Google pueda obtener e indexar
priceRangeRango de precios, como €€ o €10-25Menos de 100 caracteres
menu, servesCuisineSolo para hostelería

Como LocalBusiness también es una Organization, Google recomienda seguir también los campos de Organization, como logo y sameAs (las direcciones de sus perfiles en otros sitios, por ejemplo Instagram o Facebook).

Lo que Google no quiere en este bloque: review y aggregateRating sobre su propia empresa. Solo están pensados para sitios que recopilan reseñas sobre otras empresas. La lección 5.3 explica por qué.

La dirección como PostalAddress

La dirección es un objeto con su propio tipo. No es una sola línea de texto, sino campos separados:

"address": {
  "@type": "PostalAddress",
  "streetAddress": "Voorbeeldstraat 12",
  "postalCode": "3811 AA",
  "addressLocality": "Amersfoort",
  "addressCountry": "NL"
}
  • streetAddress: calle y número, con el complemento si lo hay.
  • postalCode: el código postal.
  • addressLocality: la localidad.
  • addressCountry: el país, preferiblemente como código de país de dos letras (NL, BE, DE).
  • addressRegion (provincia o estado) se permite, pero en los Países Bajos no es necesario.

Un error frecuente es "address": "Voorbeeldstraat 12, 3811 AA Amersfoort". Eso es texto; un lector tiene que adivinar cuál es el código postal. Utilice los campos separados.

Horario de apertura

Google indica openingHoursSpecification: una lista de bloques con días, hora de apertura y hora de cierre.

"openingHoursSpecification": [
  {
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": ["Tuesday", "Wednesday", "Thursday", "Friday"],
    "opens": "09:00",
    "closes": "18:00"
  },
  {
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": "Saturday",
    "opens": "09:00",
    "closes": "17:00"
  }
]

Las reglas:

  • Días en inglés, como en schema.org: de Monday a Sunday (o como dirección completa, https://schema.org/Monday). Nada de ma ni maandag (ni sus equivalentes en español).
  • Horas en formato de 24 horas: 09:00, no 9 uur ni 9:00 AM.
  • Un día que no aparece en la lista se considera no descrito. Si quiere indicar expresamente que cierra un día entero, ponga opens y closes ambos en 00:00.
  • Abierto día y noche: opens 00:00 y closes 23:59.
  • Abierto hasta pasada la medianoche (por ejemplo de 18:00 a 02:00): un solo bloque con opens 18:00 y closes 02:00.
  • Horario distinto temporalmente, como un cierre de invierno: el mismo bloque con validFrom y validThrough (fechas como 2026-12-24).

También existe una forma más corta de schema.org: "openingHours": ["Tu-Fr 09:00-18:00", "Sa 09:00-17:00"], con días en inglés de dos letras. Es válida en schema.org, pero no figura en la lista de Google. Si puede elegir, utilice openingHoursSpecification.

El bloque completo para Bloemenatelier Lotte

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Florist",
  "name": "Bloemenatelier Lotte",
  "url": "https://www.example.com/",
  "telephone": "+31 33 000 0000",
  "image": "https://www.example.com/beelden/winkel.jpg",
  "priceRange": "€€",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "Voorbeeldstraat 12",
    "postalCode": "3811 AA",
    "addressLocality": "Amersfoort",
    "addressCountry": "NL"
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": 52.15617,
    "longitude": 5.38763
  },
  "openingHoursSpecification": [
    { "@type": "OpeningHoursSpecification", "dayOfWeek": ["Tuesday", "Wednesday", "Thursday", "Friday"], "opens": "09:00", "closes": "18:00" },
    { "@type": "OpeningHoursSpecification", "dayOfWeek": "Saturday", "opens": "09:00", "closes": "17:00" }
  ],
  "sameAs": ["https://www.instagram.com/example"]
}
</script>

Fíjese en dos cosas. latitude y longitude son números, sin comillas; la latitud está entre -90 y 90, la longitud entre -180 y 180. Y la url apunta a su propio sitio, no a su Instagram (eso va en sameAs).

¿Dónde se coloca el bloque? Google dice que se permite en cualquier página, pero lo más lógico es una página con información sobre su empresa, como la página de inicio o la página de contacto. Si tiene varios establecimientos, cada uno tiene su propia página con su propio bloque y su propia url.

En la práctica: AI Builder y WordPress

El AI Builder de WebOké crea este bloque por sí mismo, a partir de los datos de empresa que usted introduce para el sitio: el tipo de empresa (una lista desplegable con, entre otros, Florist, Bakery y HairSalon, o el genérico LocalBusiness), nombre, dirección, código postal, localidad, teléfono, correo electrónico, horario y sus perfiles sociales. El bloque aparece en la página de inicio y en las páginas con un bloque de contacto. Actualmente, el AI Builder escribe el horario con la forma corta openingHours (por ejemplo Tu-Fr 09:00-18:00). En WordPress, los plugins de SEO hacen algo parecido, a menudo en una sección aparte para datos locales; en otros creadores de sitios web funciona igual.

Para todos los creadores vale lo mismo: el bloque es tan bueno como lo que usted introduce. Si en el creador pone un número de teléfono antiguo, ese número antiguo aparecerá también en su JSON-LD. Mantenga sus datos de empresa en un solo lugar y cópielos desde ahí a su sitio, su perfil y sus fichas.

Resumen

  • Elija el tipo de schema.org más específico que encaje, escrito exactamente como en schema.org.
  • Obligatorio según Google: name y address (como PostalAddress con campos separados).
  • Recomendado: telephone con prefijo del país, url del establecimiento, openingHoursSpecification, geo como números, image, priceRange.
  • Horario: nombres de días en inglés, horas en formato de 24 horas; cerrado es de 00:00 a 00:00, abierto día y noche de 00:00 a 23:59.
  • Nada de reseñas sobre su propia empresa en este bloque; asegúrese de que todo coincide con su perfil y su página de contacto.

Cuestionario

1. ¿Qué dos propiedades indica Google como obligatorias para un LocalBusiness?



2. ¿Qué falla en "address": "Voorbeeldstraat 12, 3811 AA Amersfoort"?



3. Los domingos cierra todo el día y quiere indicarlo expresamente. ¿Qué pone en el bloque del domingo?



4. ¿Qué valor de geo es correcto?



5. Una peluquería utiliza "@type": "Kapper". ¿Qué ocurre?



Ejercicio

Ejercicio A5.2: ¿Es correcto su bloque LocalBusiness? Introduzca la dirección de su página de inicio o de contacto y, además, el nombre de su empresa, su código postal y su número de teléfono tal como figuran en su Perfil de Empresa. El programa busca el bloque de empresa en el JSON-LD de la página y comprueba el tipo, los campos obligatorios, la dirección, el teléfono, el horario, las coordenadas y la url, y compara el nombre, el código postal y el teléfono con lo que usted ha introducido. ¿No tiene un sitio web de empresa propio? Utilice entonces el sitio de una tienda o consulta cercana y deje vacíos los tres campos de comparación.

Ejercicio A5.2: ¿Es correcto su bloque LocalBusiness?

Después, pruebe la misma página en la Prueba de resultados enriquecidos de Google y compare: ¿señala Google los mismos puntos?





No guardamos lo que escriba ni lo que encontremos. Su navegador recuerda sus respuestas y si ha superado el ejercicio. Si ha iniciado sesión, en Mis cursos solo guardamos que el ejercicio estaba (casi) correcto; allí también puede eliminarlo.

Para seguir leyendo

Los pasos de estos artículos se refieren a los paneles de WebOké; con otros proveedores funciona de forma parecida.

Un momento…

Configure sus dominios

Configure para cada dominio los servidores de nombres, la vinculación a su hosting y quién será el titular.

Cargando sus dominios…