-
Notifications
You must be signed in to change notification settings - Fork 0
Añade dos campos por entrada/página/CPT para inyectar código en wp_head y justo después de la etiqueta <body>.
luchoweb/lw-html-code-injector
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
=== LW HTML Code Injector === Contributors: luchoweb Author: Lucho Web (https://luchoweb.dev) Tags: head, body, code injector, custom code, html, scripts Requires at least: 5.0 Tested up to: 6.7 Requires PHP: 7.4 Stable tag: 1.0.1 License: GPLv2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html Agrega código HTML personalizado en el <head> y justo después del <body> mediante cajas meta en posts, páginas y Custom Post Types. Incluye medidas de seguridad y opciones de control para administradores. == Description == **LW HTML Code Injector** permite insertar código HTML en dos ubicaciones clave del tema: - Dentro del `wp_head` - Inmediatamente después de `<body>` vía `wp_body_open` Estas inserciones funcionan en: - Entradas (posts) - Páginas - Custom Post Types públicos El plugin añade dos textarea en una meta box llamada **“Head & Body Injector”**, visibles únicamente para administradores o usuarios con la capacidad `unfiltered_html`. ### Características principales - Inserción de HTML personalizada por cada post/page/CPT. - Sanitización automática para usuarios sin `unfiltered_html`. - Eliminación de atributos peligrosos como `onclick`, `onload`, etc. - Lista segura de etiquetas permitidas mediante `wp_kses`. - Fallback opcional para temas sin `wp_body_open` (desactivado por defecto). - Registro de autor y fecha de modificación del código. - Compatible con shortcodes. - Compatible con cualquier tema moderno. ### Seguridad Este plugin incluye capas de protección: - La meta box solo aparece para administradores o usuarios con permisos elevados. - El contenido se **saneá al guardar** para roles sin `unfiltered_html`. - Se evita la ejecución de scripts no autorizados y atributos con eventos. - El fallback que usa `innerHTML` en el `<body>` está **desactivado por defecto**. - Se recomienda activar 2FA para administradores y configurar una política CSP en el servidor. Aun así, ten en cuenta: - Los administradores pueden insertar código no filtrado (intencional). - No instales este plugin en sitios donde usuarios no confiables puedan editar contenido. ### Casos de uso - Códigos de tracking por página. - Scripts específicos para campañas. - Snippets de HTML único por entrada. - Integraciones personalizadas sin modificar archivos de tema. == Installation == 1. Sube la carpeta del plugin a `/wp-content/plugins/lw-html-code-injector/` o instala el ZIP desde **Plugins → Añadir nuevo → Subir plugin**. 2. Activa el plugin. 3. Edita una entrada/página/CPT y verás la meta box **Head & Body Injector**. 4. Agrega tu código HTML donde necesites. - Se insertará en `wp_head()` o `wp_body_open()` dependiendo del campo. - Si tu tema no usa `wp_body_open()`, puedes activar el fallback (requiere editar `wp-config.php` o añadir un filtro). == Frequently Asked Questions == = ¿Puedo insertar scripts completos? = Solo si tu usuario tiene la capacidad `unfiltered_html`. De lo contrario, el plugin limpia el contenido para mantener el sitio seguro. = ¿Es seguro usarlo en sitios con muchos editores? = Recomendado únicamente para sitios donde solo administradores tengan acceso a estas cajas meta. = ¿Puedo usar shortcodes en los campos? = Sí. WordPress procesará los shortcodes antes de imprimir el contenido. = ¿Qué pasa si mi tema no tiene wp_body_open()? = El código para `<body>` no se imprimirá, a menos que habilites el fallback manualmente. == Changelog == = 1.0.1 = - Añadida sanitización avanzada con eliminación de event handlers. - Meta box limitada a administradores/unfiltered_html. - Fallback para body desactivado por defecto por motivos de seguridad. - Registro de autor y fecha. - Mejoras de estabilidad. = 1.0.0 = - Versión inicial. == License == Este plugin está bajo GPLv2 o posterior. Eres libre de modificarlo y redistribuirlo bajo la misma licencia.
About
Añade dos campos por entrada/página/CPT para inyectar código en wp_head y justo después de la etiqueta <body>.