Ir al contenido

Datos estructurados Schema.org

WP-ImmoMakler añade automáticamente datos JSON-LD según schema.org a cada vista de lista de inmuebles y a cada página de detalle. Los motores de búsqueda, los motores de respuesta y los asistentes de IA pueden así identificar sus inmuebles como ofertas inmobiliarias — con precio, ubicación, datos energéticos, persona de contacto y disponibilidad. PLUS

Esta página describe qué schemas emite WP-ImmoMakler, dónde puede activarlos o desactivarlos y qué ventajas aporta para el SEO, AEO y GEO.

Un documento HTML contiene texto, imágenes y diseño — pero ninguna declaración legible por máquinas que indique que en esta página se ofrece en venta un piso en Hamburgo-Eppendorf por 749.000 €. Para eso existe schema.org: un vocabulario compartido que entienden por igual Google, Bing, Apple, ChatGPT, Perplexity, Gemini y Claude.

WP-ImmoMakler proporciona este vocabulario para sus inmuebles de forma automática. No necesita mantener nada manualmente — los datos provienen de su interfaz OpenImmo, de la importación del software inmobiliario o de los campos de los formularios de inmuebles.

Los motores de búsqueda utilizan los datos estructurados para enriquecer sus resultados de búsqueda: precio y disponibilidad directamente en el fragmento de resultado, imágenes junto al resultado, ruta de navegación en lugar de una URL desnuda. En las vistas de lista, Google puede mostrar el rango de precios de todos los inmuebles coincidentes. Esto aumenta notablemente la tasa de clics sin modificar el propio posicionamiento.

Así es como se ve el marcado de precios de schema.org en los resultados de búsqueda de Google: en la página de detalle del inmueble, Google muestra el precio individual del inmueble.

Resultado de búsqueda de Google de una página de detalle de un inmueble de WP-ImmoMakler con el precio individual marcado

En la vista de lista, Google muestra en cambio el rango de precios de todos los inmuebles coincidentes a partir del schema AggregateOffer.

Resultado de búsqueda de Google de una vista de lista de inmuebles de WP-ImmoMakler con el rango de precios marcado

AEO — Optimización para motores de respuesta

Sección titulada «AEO — Optimización para motores de respuesta»

Los motores de respuesta como Google AI Overviews, Bing Copilot o Perplexity formulan respuestas directas a las consultas de búsqueda. Para “¿Qué casas hay en venta en Lübeck?”, el motor de respuesta recurre preferentemente a páginas cuyo contenido puede leer de forma estructurada. Un schema ItemList con los inmuebles visibles en la página es exactamente lo que estos sistemas esperan.

GEO — Optimización para motores generativos

Sección titulada «GEO — Optimización para motores generativos»

Los modelos de IA generativa (ChatGPT, Claude, Gemini) citan preferentemente fuentes cuyas afirmaciones pueden atribuirse claramente. Un RealEstateListing con dirección, superficie habitable, año de construcción y certificado energético es una afirmación clara y citable. Una página HTML sin estructurar con la misma información resulta ambigua para el modelo.

En vistas de lista (archivo, resultados de búsqueda, categorías)

Sección titulada «En vistas de lista (archivo, resultados de búsqueda, categorías)»
SchemaContenido
ItemListLos inmuebles visibles en la página actual con posición, URL y título; el número total de todos los inmuebles coincidentes.
AggregateOfferPrecio mínimo y máximo, así como el número de ofertas de la lista, en todas las páginas de la lista, además de la foto del primer inmueble. Los inmuebles cuyo único precio es un precio por m² (frecuente en alquileres comerciales) cuentan como oferta, pero quedan fuera del rango de precios, porque no son comparables con alquileres mensuales ni con precios de compra. Si la lista contiene inmuebles en venta y en alquiler, se emite un AggregateOffer propio por cada tipo de comercialización (p. ej. «Inmuebles: compra» e «Inmuebles: alquiler»), para que los alquileres y los precios de compra no acaben en un mismo rango de precios. Opcionalmente ampliado con RealEstateListing, Residence y House o Apartment cuando la lista está filtrada por un tipo de inmueble.
SchemaContenido
ProductTítulo, descripción, número de inmueble (SKU), imagen de vista previa en tamaño original y Offer con precio, divisa y disponibilidad (InStock o SoldOut). Si el inmueble no tiene divisa, se utiliza la divisa predeterminada de los ajustes.
RealEstateListingAmplía el schema Product con RealEstateListing y Residence. Para casas y pisos, se añade adicionalmente House o Apartment.
AccommodationSchema propio con datos de uso y habitabilidad: número de habitaciones y baños, planta, superficie habitable (m²), año de construcción, mascotas permitidas, dirección con barrio, coordenadas geográficas y valores energéticos como LocationFeatureSpecification. Tipos específicos: SingleFamilyResidence, House, Apartment, Room — con reserva sobre Accommodation.
PlaceReserva para inmuebles comerciales (oficina, comercio minorista, hostelería, almacén, aparcamiento). Con additionalType apuntando al subtipo correspondiente como OfficeBuilding o Warehouse, incluyendo superficie, año de construcción, dirección y coordenadas geográficas.
RealEstateAgentIncrustado como seller en Product y como performer/organizer en Event: nombre, empresa, teléfono, correo electrónico, dirección e imagen de la persona de contacto.
Event “Solicitar visita”Marca la página de detalle como una cita reservable en la ubicación del inmueble.
Event “Tour virtual 360°”Se emite adicionalmente cuando el inmueble tiene una URL de tour 360°. Marcado como OnlineEventAttendanceMode con VirtualLocation.
VideoObjectUna entrada por cada vídeo del inmueble (YouTube, Vimeo, archivo de vídeo) con nombre, descripción, imagen de vista previa, fecha de subida y, si está disponible, duración y URL del reproductor o del archivo. Véase Vídeos.

Si hay un extracto (resumen) almacenado para un inmueble, los schemas de vista de detalle Product, Accommodation y Place añaden adicionalmente el campo disambiguatingDescription con este resumen breve — independiente de la description detallada (que se forma a partir del título y la meta descripción SEO — véase Título SEO y descripción SEO para saber cómo se estructura). Así, los motores de búsqueda y de respuesta obtienen una declaración compacta e independientemente citable sobre el inmueble, además de los datos estructurados clave.

disambiguatingDescription es un campo de la clase base Thing de schema.org y, por tanto, es válido en los tres schemas de vista de detalle (a diferencia de abstract, que solo estaría permitido en tipos CreativeWork). Puede mantener el extracto manualmente o dejarlo generar automáticamente a través de las Funciones IA; el mismo texto aparece también en la página de detalle como resumen destacado bajo el subtítulo.

Si un inmueble tiene vídeos, la vista de detalle emite una entrada VideoObject independiente para cada vídeo. Los valores proceden de los datos que WP-ImmoMakler ya mantiene para las tarjetas de vídeo:

CampoOrigen
name“Video: ” y el título del inmueble; numerado cuando hay varios vídeos (“Video 1: …”).
descriptionEl título y la meta descripción SEO del inmueble, como en los demás schemas.
thumbnailUrlLa imagen de vista previa que WP-ImmoMakler almacena en caché en su servidor. En archivos de vídeo, una imagen destacada del archivo tiene prioridad.
uploadDateEn archivos de vídeo, la fecha y hora de subida a la biblioteca de medios; en Vimeo, la fecha que indica Vimeo – sin hora, porque Vimeo no indica una zona horaria para ella. YouTube no proporciona fecha; en ese caso se usa la fecha de publicación del inmueble.
durationEn archivos de vídeo, la duración de la biblioteca de medios; en Vimeo, la duración que indica Vimeo. Se omite en los vídeos de YouTube.
embedUrl / contentUrlEn YouTube, la URL del reproductor youtube-nocookie; en Vimeo, la URL del reproductor; en archivos de vídeo, la dirección del archivo.

Los vídeos para los que aún no existe una imagen de vista previa se omiten, porque Google exige thumbnailUrl de forma obligatoria. Esto afecta sobre todo a los archivos de vídeo recién importados cuya imagen de vista previa todavía no se ha generado. Los archivos de solo descarga sin reproductor no aparecen en los datos estructurados.

La indicación en el JSON-LD no carga el vídeo. Cuándo se carga el vídeo para sus visitantes lo sigue determinando el consentimiento — mediante la solicitud de consentimiento propia de WP-ImmoMakler o mediante su plugin de consentimiento. Los plugins de consentimiento como Complianz no modifican los bloques JSON-LD, aunque contengan direcciones de YouTube o Vimeo.

Del certificado energético, WP-ImmoMakler transfiere los siguientes valores como LocationFeatureSpecification al schema Accommodation:

  • Demanda de energía final (kWh/(m²·a))
  • Consumo de energía final (kWh/(m²·a))
  • Clase de eficiencia energética (A+ hasta H)

Si el estado del certificado energético está configurado como “sin certificado”, “no necesario” o “en la visita”, no se emiten datos energéticos — de forma análoga a la visualización conforme al GEG en el frontend.

Todos los schemas de las vistas de detalle apuntan con image a la imagen de vista previa del inmueble en su tamaño original. Los motores de búsqueda prefieren las imágenes grandes y las reducen ellos mismos; una miniatura pequeña de la lista se descartaría con frecuencia para la imagen que se muestra junto al resultado de búsqueda.

Los datos de schema.org solo se emiten para inmuebles con el estado disponible. Las referencias, reservas e inmuebles vendidos no están incluidos en los datos estructurados y, por tanto, los motores de búsqueda no los notifican como disponibles.

Todas las salidas de schema pueden activarse o desactivarse individualmente. Encontrará las opciones en el backend de su sitio web (wp-admin) en WP-ImmoMakler → Ajustes → SEO/AEO/GEO.

Pestaña SEO/AEO/GEO con las casillas de todas las salidas schema.org, de ItemList a VideoObject
OpciónEfecto
schema.org/ItemListJSON-LD ItemList en vistas de lista.
schema.org/AggregateOfferJSON-LD AggregateOffer en vistas de lista (rango de precios y número de ofertas).
schema.org/ProductJSON-LD Product en vistas de detalle.
schema.org/RealEstateListingAmplía el schema Product con RealEstateListing, Residence y en su caso House/Apartment.
schema.org/RealEstateAgentIncrusta a la persona de contacto como seller en el schema Product y como performer/organizer en el schema Event.
schema.org/AccomodationJSON-LD Accommodation con datos de uso y habitabilidad en vistas de detalle; para inmuebles comerciales, se utiliza Place como reserva.
schema.org/Event “Solicitar visita”JSON-LD Event para solicitudes de visita.
schema.org/Event “Tour virtual 360°”JSON-LD Event para tours virtuales en inmuebles con tour 360°.
schema.org/VideoObjectJSON-LD VideoObject para cada vídeo en vistas de detalle de inmuebles con vídeo.

Todas las opciones están activadas de forma predeterminada. Si una de las opciones ItemList, RealEstateListing, RealEstateAgent, Accomodation o una de las dos opciones de Event está desactivada, WP-ImmoMakler muestra un aviso en el backend de WordPress que recomienda activar todas las opciones de Schema.org y enlaza a la pestaña SEO/AEO/GEO. Puede descartar el aviso.

Aviso de administración que recomienda todas las opciones de Schema.org para AEO/GEO, con un enlace a la pestaña SEO/AEO/GEO

Puede ver el JSON-LD generado directamente en el código fuente de cada página de detalle o de lista. Las etiquetas <script> están marcadas con un comentario HTML:

<!-- BEGIN schema.org section generated by WP-ImmoMakler RealEstate Plugin ... -->
<script type="application/ld+json" class="immomakler-schema-product">…</script>
<script type="application/ld+json" class="immomakler-schema-accomodation">…</script>
<script type="application/ld+json" class="immomakler-schema-video">…</script>
<!-- END schema.org section ... -->

Para una validación estructurada, se recomiendan estas herramientas externas:

Resultado de la prueba de resultados enriquecidos de Google para una página de detalle de inmueble con 10 elementos válidos, entre ellos fragmentos de producto y fichas de comerciante

Cada schema es accesible a través de un filter hook, lo que le permite añadir, modificar o eliminar campos — de forma segura ante actualizaciones en su plugin de child skin de WP-ImmoMakler:

  • immomakler_schema_item_list
  • immomakler_schema_aggregate_offer (recibe además la consulta y el slug del tipo de comercialización para el que se forma la oferta; vacío si la lista no se ha dividido)
  • immomakler_schema_product
  • immomakler_schema_accomodation
  • immomakler_schema_commercial_property
  • immomakler_schema_event
  • immomakler_schema_video_object

Las firmas y los valores predeterminados se encuentran en la Referencia de hooks para SEO.