Migrar schema Article a FinancialProduct en páginas de protocolos DeFi
La corrección de schema de mayor ROI en DeFi. Cerca del 88% de las páginas de protocolos corren schema Article por defecto. Así es cómo migrar limpiamente sin romper validación.
Por qué importa esto
- →Across 200+ TG3 client audits, sites with proper FinancialProduct schema get cited by AI engines 3-4x more than sites with Article schema.
- →Article schema on a protocol page makes Google's rich result systems treat your page as a blog post. No FinancialProduct-specific rich features eligible.
- →Most DeFi sites use Yoast or RankMath which emit Article schema by default. Override is required.
- →Single migration typically lifts organic traffic 30-50% within 60 days based on TG3 client data.
Estado anterior (cómo se ve lo malo)
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "Aave - Decentralized Lending Protocol",
"description": "Aave is a DeFi lending protocol...",
"image": "https://example.com/aave-hero.png",
"datePublished": "2024-01-15"
}
</script>
Paso a paso
Paso 1: Identifica todas las páginas de protocolo en tu sitio
Corre un crawl del sitio con Screaming Frog (gratis hasta 500 URLs) o usa el reporte Pages de Google Search Console. Filtra por URLs que describen un solo protocolo DeFi: típicamente /protocols/{nombre}/, /defi/{nombre}/, o tu homepage si ERES el protocolo. Documenta la lista. La necesitarás para migración por lotes.
Paso 2: Audita el schema actual en esas páginas
Abre Schema.org Validator (validator.schema.org) y pega la URL de cada página de protocolo. Anota qué tipos de schema son emitidos. Hallazgos más probables: Article de Yoast/RankMath, más BreadcrumbList de tu CMS, posiblemente Organization. La entrada Article es lo que estás reemplazando.
Paso 3: Sobreescribe el schema Article por defecto de tu CMS
Si estás en WordPrensa con Yoast o RankMath, ambos tienen hooks para sobreescribir el schema. Añade esto al functions.php de tu tema para remover el schema Article en páginas de protocolo:
<?php
add_filter('rank_math/json_ld', function($data, $jsonld) {
if (is_singular('protocol')) { // adjust to your post type
unset($data['richSnippet']);
}
return $data;
}, 10, 2);
// For Yoast equivalent:
add_filter('wpseo_schema_graph_pieces', function($pieces, $context) {
if (is_singular('protocol')) {
return array_filter($pieces, function($piece) {
return !($piece instanceof \Yoast\WP\SEO\Generators\Schema\Article);
});
}
return $pieces;
}, 11, 2);
Paso 4: Inyecta el schema FinancialProduct vía JSON-LD personalizado
Añade un bloque JSON-LD personalizado a tu template de página de protocolo. Para WordPrensa, usa un campo personalizado o ACF (Advanced Custom Fields) para guardar data por protocolo, luego renderiza en el head. El enfoque de graph te deja apilar FinancialProduct + BreadcrumbList + Preguntas frecuentesPage limpiamente. Usa el ejemplo del "Estado posterior" arriba como tu plantilla.
Paso 5: Añade schema Preguntas frecuentesPage con 5+ preguntas
En la misma página de protocolo, añade schema Preguntas frecuentesPage con las preguntas explícitas de confianza y cómo-funciona. Los motores IA extraen estas fuertemente para recuperación. Apila con FinancialProduct vía wrapper @graph compartido.
{
"@type": "Preguntas frecuentesPage",
"mainEntity": [
{
"@type": "Question",
"name": "Is Aave safe to use?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Aave has been audited 12+ times..."
}
}
]
}
Paso 6: Valida contra tres validadores
Corre la página migrada a través de Schema.org Validator (captura sintaxis), Google Rich Resultados Test (captura elegibilidad), y Bing Markup Validator (parseo más estricto, importante porque ChatGPT usa Bing para recuperación). Pasa los tres antes de desplegar. Schema.org primero porque los errores de sintaxis bloquean todo lo demás.
Paso 7: Despliega y monitorea en Search Console
Pushea a producción. Envía la URL actualizada en la herramienta GSC URL Inspection para solicitar re-indexación. Monitorea la pestaña "Enhancements" en Search Console durante los próximos 7-14 días. Nuevos tipos de rich results deberían aparecer (Preguntas frecuentes, Sitelinks). Rastrea el tráfico orgánico en la página durante 30/60/90 días para el lift de ranking.
FREE WEB3 AUDIT
Mira dónde aplica este playbook en tu sitio.
Corre una auditoría Crawlux gratis antes de empezar el playbook. Te dice qué correcciones son más urgentes.
Primera auditoría gratis · Sin registro · 60 segundos · Full PDF report
Estado posterior (cómo se ve lo bueno)
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "FinancialProduct",
"@id": "https://example.com/aave/#product",
"name": "Aave",
"description": "Aave is a DeFi lending protocol with $11.2B TVL across 11 chains.",
"url": "https://example.com/aave/",
"provider": {
"@type": "Organization",
"name": "Aave Companies",
"url": "https://aave.com"
},
"termsOfServicio": "https://example.com/aave/terms/",
"feeStructure": {
"@type": "PriceSpecification",
"description": "Variable APY based on utilization"
},
"audience": {
"@type": "Audience",
"audienceType": "DeFi users"
},
"additionalProperty": [
{"@type": "PropertyValue", "propertyID": "totalValueLocked", "value": "11200000000"},
{"@type": "PropertyValue", "propertyID": "auditedContract", "value": "0x..."}
]
},
{
"@type": "BreadcrumbList",
"itemListElement": [
{"@type": "ListItem", "position": 1, "name": "Inicio", "item": "https://example.com/"},
{"@type": "ListItem", "position": 2, "name": "Protocols", "item": "https://example.com/protocols/"},
{"@type": "ListItem", "position": 3, "name": "Aave"}
]
}
]
}
</script>
Cómo validar la corrección
- ✓Schema.org Validator returns 0 errors and 0 warnings on the FinancialProduct entity.
- ✓Google Rich Resultados Test reports the page as eligible for Preguntas frecuentes rich results (FinancialProduct itself isn't in Google's primary rich result types yet but Preguntas frecuentes stacked on top is).
- ✓Bing Markup Validator returns 0 errors.
- ✓GSC URL Inspection shows the new schema in the rendered HTML.
- ✓After 7-14 days, GSC Enhancements tab shows Preguntas frecuentes rich results activity.
Errores comunes
Pitfall
Olvidar remover el schema Article viejo
Si añades FinancialProduct sin remover Article, ambos emiten. Google deduplica mal cuando tipos de schema conflictivos describen la misma entidad. Siempre quita el viejo primero.
Pitfall
Faltan propiedades requeridas
FinancialProduct requiere name y description como mínimo. Los validadores marcarán campos requeridos faltantes. Llena todos.
Pitfall
Usar string para feeStructure
feeStructure debería ser PriceSpecification o QuantitativeValue, no un string plano. Los strings planos fallan validación.
Pitfall
Saltarse el wrapper @graph
Usar @type de nivel superior cuando apilas múltiples entidades crea schema desordenado. Siempre usa @graph: [...] cuando tienes FinancialProduct + BreadcrumbList + Preguntas frecuentesPage en la misma página.
Pitfall
No probar en HTML renderizado móvil
Si tu sitio usa CSR, corre validación en el DOM realmente renderizado vía Puppeteer, no el HTML inicial. El schema en script tags todavía debería funcionar pero pruébalo.
Si algo se rompe: rollback
Si el schema causa problemas post-deploy: revierte el override de functions.php para restaurar el schema Article, remueve la inyección FinancialProduct personalizada. El schema viejo regresa en minutos. Sin pérdida de data porque el schema es solo metadata.
Corre una auditoría Crawlux gratis sobre esta corrección
Crawlux valida las correcciones de schema, técnicas y AEO de este playbook automáticamente. Plan gratis en un dominio.
Ejecutar auditoría gratuita →Preguntas frecuentes
¿Por qué FinancialProduct y no Servicio o Producto?
FinancialProduct extiende Servicio en la jerarquía de Schema.org y tiene propiedades relevantes a crypto (feeStructure, termsOfServicio, identificadores de contratos auditados). Servicio es demasiado genérico. Producto es para bienes físicos o software. FinancialProduct está construido a propósito para ofertas financieras incluyendo protocolos DeFi.
¿Esto dañará mis rankings existentes?
No. Las migraciones de schema son cambios de metadata. Levantan rankings cuando se hacen correctamente. El riesgo es sintaxis rota que rompa el parseo de schema completamente, por lo que probar con tres validadores es obligatorio antes del deploy.
¿Cuánto tiempo hasta ver impacto en ranking?
Las correcciones de schema típicamente se muestran en 2-4 semanas para crawl/recrawl, 30-60 días para impacto completo en ranking. Las citas AEO pueden levantarse más rápido (2-4 semanas) porque los motores IA re-crawlean frecuentemente.
¿Puedo hacer esto sin tocar código?
Parcialmente. Schema App y herramientas similares te dejan inyectar schema vía tag manager. Funciona pero limitado. La migración completa requiere o hooks de CMS (filtros de Yoast/RankMath) o trabajo de template personalizado. Presupuesta 30-45 minutos si tienes acceso de dev; 2-4 horas si no.
¿Qué si mi CMS no soporta inyección JSON-LD personalizada?
Usa Google Tag Manager o un widget HTML personalizado en tu CMS para inyectar el JSON-LD. Menos limpio que la inyección a nivel de template pero funciona. Único downside: dependiente de ejecución JS lo que significa que los crawlers SEO pueden perderlo ocasionalmente.
Playbooks relacionados
Guías pilares
Módulos de auditoría
RUN YOUR FIRST AUDIT
Corre el playbook contra una auditoría real.
Recibe un reporte de auditoría Crawlux gratis y úsalo como línea base para el trabajo en este playbook.
Primera auditoría gratis · Sin registro · 60 segundos · Full PDF report
