Icons Setup
Icons setup resuelve una API SVG reusable del theme con fallback child -> parent -> modulo.
Archivos clave:
- setup/modules/icons-setup/module.php
- setup/modules/icons-setup/includes/icons.php
- assets/icons/ del child o del parent
Resolucion de rutas:
function icons_setup_get_icon_paths()
{
$paths = [
trailingslashit(get_stylesheet_directory()) . 'assets/icons/',
trailingslashit(get_template_directory()) . 'assets/icons/',
ICONS_SETUP_PATH . 'assets/icons/',
];
return apply_filters('icons_setup_paths', $paths);
}Helpers publicos:
- icons_svg($name, $classes, $attrs)
- render_icon($name, $classes, $attrs)
- shortcode [icon]
Sanitizado:
- elimina script, foreignObject, iframe y style inline peligrosos
- limpia atributos on*
- puede forzar currentColor para integracion con Tailwind y tokens CSS
Ejemplo de uso:
echo icons_svg('whatsapp', 'w-7 h-7 text-[#00D95F]', ['aria-label' => 'whatsapp']);Regla practica:
- si el icono es de interfaz y debe heredar color por CSS, usa icons setup
- si el recurso viene de Media Library, usa media-setup
Last updated on