Files
roi-theme/Schemas/adsense-placement.json
FrankZamora 4d5cc1a58c feat(adsense): agregar opcion para ocultar anuncios a usuarios logueados
- Nuevo campo hide_for_logged_in en schema visibility group
- Switch en panel de administracion con icono bi-person-lock
- Mapeo en FieldMapper para persistencia
- Validacion en roi_render_ad_slot, roi_render_rail_ads,
  roi_enqueue_adsense_script y roi_inject_content_ads
- No carga script ni muestra ads si usuario tiene sesion activa

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-28 10:31:49 -06:00

371 lines
12 KiB
JSON

{
"component_name": "adsense-placement",
"version": "1.2.0",
"description": "Control de AdSense y Google Analytics - Panel reorganizado",
"groups": {
"visibility": {
"label": "Activacion",
"priority": 10,
"fields": {
"is_enabled": {
"type": "boolean",
"label": "Activar AdSense",
"default": false,
"editable": true,
"required": true,
"description": "Activa el control manual de ubicacion de anuncios"
},
"show_on_desktop": {
"type": "boolean",
"label": "Mostrar en escritorio",
"default": true,
"editable": true,
"description": "Muestra anuncios en pantallas desktop (>=992px)"
},
"show_on_mobile": {
"type": "boolean",
"label": "Mostrar en movil",
"default": true,
"editable": true,
"description": "Muestra anuncios en pantallas moviles (<992px)"
},
"hide_for_logged_in": {
"type": "boolean",
"label": "Ocultar para usuarios logueados",
"default": false,
"editable": true,
"description": "No mostrar anuncios a usuarios con sesion iniciada en WordPress"
}
}
},
"analytics": {
"label": "Google Analytics",
"priority": 15,
"fields": {
"analytics_enabled": {
"type": "boolean",
"label": "Activar Analytics",
"default": false,
"editable": true,
"description": "Activa Google Analytics en el sitio"
},
"ga_tracking_id": {
"type": "text",
"label": "Google Analytics ID",
"default": "",
"editable": true,
"description": "ID de seguimiento (G-XXXXXXXXXX o UA-XXXXXXXX-X)"
},
"ga_anonymize_ip": {
"type": "boolean",
"label": "Anonimizar IP (GDPR)",
"default": true,
"editable": true,
"description": "Recomendado para cumplir con GDPR/RGPD"
}
}
},
"content": {
"label": "Credenciales AdSense",
"priority": 20,
"fields": {
"publisher_id": {
"type": "text",
"label": "Publisher ID",
"default": "ca-pub-8476420265998726",
"editable": true,
"description": "Tu ID de publicador de Google AdSense"
},
"slot_display": {
"type": "text",
"label": "Slot Display (fijo)",
"default": "2873062302",
"editable": true,
"description": "Para anuncios de tamano fijo (728x90, 970x250)"
},
"slot_auto": {
"type": "text",
"label": "Slot Auto (responsive)",
"default": "8471732096",
"editable": true,
"description": "Para anuncios responsive"
},
"slot_autorelaxed": {
"type": "text",
"label": "Slot Autorelaxed (feed)",
"default": "9205569855",
"editable": true,
"description": "Para feeds y listados"
},
"slot_inarticle": {
"type": "text",
"label": "Slot In-Article (fluid)",
"default": "7285187368",
"editable": true,
"description": "Para insertar dentro del contenido"
},
"slot_skyscraper": {
"type": "text",
"label": "Slot Skyscraper (160x600 / 300x600)",
"default": "",
"editable": true,
"description": "Para Rail Ads en margenes laterales"
}
}
},
"behavior": {
"label": "Ubicaciones en Posts",
"priority": 70,
"fields": {
"post_top_enabled": {
"type": "boolean",
"label": "Despues de Featured Image",
"default": true,
"editable": true
},
"post_top_format": {
"type": "select",
"label": "Formato Post Top",
"default": "auto",
"editable": true,
"options": ["auto", "in-article", "display", "display-large"]
},
"post_content_enabled": {
"type": "boolean",
"label": "Insertar dentro del contenido",
"default": false,
"editable": true,
"description": "Inserta anuncios automaticamente entre parrafos"
},
"post_content_random_mode": {
"type": "boolean",
"label": "Modo aleatorio",
"default": true,
"editable": true,
"description": "Inserta ads en posiciones aleatorias (mejor UX)"
},
"post_content_min_ads": {
"type": "select",
"label": "Minimo de ads",
"default": "1",
"editable": true,
"options": ["1", "2", "3", "4"],
"description": "Cantidad minima de anuncios a mostrar"
},
"post_content_max_ads": {
"type": "select",
"label": "Maximo de ads",
"default": "3",
"editable": true,
"options": ["1", "2", "3", "4", "5", "6", "7", "8"],
"description": "Cantidad maxima de anuncios a mostrar"
},
"post_content_after_paragraphs": {
"type": "text",
"label": "Primer ad despues del parrafo #",
"default": "3",
"editable": true,
"description": "Numero de parrafo despues del cual insertar el primer ad"
},
"post_content_min_paragraphs_between": {
"type": "select",
"label": "Parrafos minimos entre ads",
"default": "4",
"editable": true,
"options": ["2", "3", "4", "5", "6"],
"description": "Espacio minimo entre anuncios consecutivos"
},
"post_content_format": {
"type": "select",
"label": "Formato Contenido",
"default": "in-article",
"editable": true,
"options": ["in-article", "auto"]
},
"post_bottom_enabled": {
"type": "boolean",
"label": "Despues del contenido",
"default": true,
"editable": true
},
"post_bottom_format": {
"type": "select",
"label": "Formato Post Bottom",
"default": "auto",
"editable": true,
"options": ["auto", "in-article", "display"]
},
"after_related_enabled": {
"type": "boolean",
"label": "Despues de Related Posts",
"default": false,
"editable": true
},
"after_related_format": {
"type": "select",
"label": "Formato After Related",
"default": "autorelaxed",
"editable": true,
"options": ["autorelaxed", "auto"]
},
"rail_ads_enabled": {
"type": "boolean",
"label": "Rail Ads (margenes laterales)",
"default": false,
"editable": true,
"description": "Anuncios fijos en los espacios laterales del viewport (solo pantallas >=1600px)"
},
"rail_left_enabled": {
"type": "boolean",
"label": "Rail izquierdo",
"default": true,
"editable": true
},
"rail_right_enabled": {
"type": "boolean",
"label": "Rail derecho",
"default": true,
"editable": true
},
"rail_format": {
"type": "select",
"label": "Altura Rail Ads",
"default": "h600",
"editable": true,
"options": {
"h250": "250px (Compacto)",
"h300": "300px (Pequeno)",
"h400": "400px (Mediano)",
"h500": "500px",
"h600": "600px (Recomendado)",
"h700": "700px",
"h800": "800px (Grande)",
"h1050": "1050px (Extra grande)"
},
"description": "Altura del anuncio. El ancho se ajusta automaticamente al espacio disponible."
},
"rail_top_offset": {
"type": "select",
"label": "Distancia desde arriba",
"default": "300",
"editable": true,
"options": {
"150": "150px (Cerca del header)",
"200": "200px",
"300": "300px (Recomendado)",
"400": "400px",
"500": "500px",
"700": "700px (Debajo del fold)"
},
"description": "Distancia vertical desde el top del viewport"
}
}
},
"layout": {
"label": "Ubicaciones Archivos/Globales",
"priority": 80,
"fields": {
"archive_top_enabled": {
"type": "boolean",
"label": "Arriba del listado (archives)",
"default": false,
"editable": true
},
"archive_between_enabled": {
"type": "boolean",
"label": "Entre posts del listado",
"default": false,
"editable": true
},
"archive_between_every": {
"type": "text",
"label": "Mostrar cada X posts",
"default": "4",
"editable": true,
"description": "Ej: 4 = un anuncio cada 4 posts"
},
"archive_bottom_enabled": {
"type": "boolean",
"label": "Abajo del listado",
"default": false,
"editable": true
},
"archive_format": {
"type": "select",
"label": "Formato para archivos",
"default": "autorelaxed",
"editable": true,
"options": ["autorelaxed", "auto"]
},
"header_below_enabled": {
"type": "boolean",
"label": "Debajo del header (global)",
"default": false,
"editable": true
},
"footer_above_enabled": {
"type": "boolean",
"label": "Arriba del footer (global)",
"default": false,
"editable": true
},
"global_format": {
"type": "select",
"label": "Formato para globales",
"default": "auto",
"editable": true,
"options": ["auto", "display-large"]
}
}
},
"forms": {
"label": "Exclusiones y Rendimiento",
"priority": 90,
"fields": {
"exclude_categories": {
"type": "textarea",
"label": "Excluir categorias (IDs)",
"default": "",
"editable": true,
"description": "IDs de categorias separados por coma (ej: 5,12,23)"
},
"exclude_post_types": {
"type": "textarea",
"label": "Excluir tipos de post",
"default": "",
"editable": true,
"description": "Tipos de post separados por coma (ej: page,attachment)"
},
"exclude_post_ids": {
"type": "textarea",
"label": "Excluir posts especificos (IDs)",
"default": "",
"editable": true,
"description": "IDs de posts/paginas separados por coma"
},
"min_content_length": {
"type": "text",
"label": "Longitud minima de contenido",
"default": "500",
"editable": true,
"description": "No insertar ads si el contenido tiene menos caracteres"
},
"delay_enabled": {
"type": "boolean",
"label": "Retrasar carga de anuncios",
"default": true,
"editable": true,
"description": "Mejora rendimiento: carga ads despues de interaccion"
},
"delay_timeout": {
"type": "text",
"label": "Timeout de delay (ms)",
"default": "5000",
"editable": true,
"description": "Tiempo maximo de espera en milisegundos"
}
}
}
}
}