Alada Favicon – Conditional Site Icons gives you full control over your site’s favicon at every level. Set a global override to replace WordPress’s default site icon, then go deeper by assigning a unique favicon to any individual page, post, category, or taxonomy term — all from the native WordPress admin, with zero file writes and zero .htaccess changes.
Built for developers and power users who need pixel-perfect branding across multi-section, multi-brand, or multilingual websites.
Global Site Icon Override
Upload a replacement favicon directly from the plugin Settings page. This replaces the icon set in Appearance Customize Site Identity for the entire site, without touching any theme files.
Per-Page / Per-Post Favicon
Assign a unique favicon to any individual page or post. A clean media picker appears in both the Block Editor (Gutenberg) sidebar and the Classic Editor metabox. The icon is stored as post meta and resolved dynamically at runtime.
Per-Term / Per-Category Favicon
Set a favicon for any taxonomy term (categories, tags, WooCommerce product categories, and any custom taxonomy). The icon appears on that term’s archive page. The favicon picker is injected into the standard WordPress Add Term and Edit Term screens.
Elementor Page Settings Integration
A dedicated “Favicon” section is added to Elementor’s Page Settings panel. Designers can update the page favicon directly inside the Elementor editor.
Smart Priority Matrix
When multiple rules exist for the same page, the plugin resolves the correct icon using a strict top-down priority:
Settings Page (Settings Alada Favicon)
Choose which post types and taxonomies are eligible for the custom favicon picker. Only enabled types show the metabox or term field, keeping the editing interface clean. Includes a “Settings” quick-link directly on the Plugins screen.
No File Writes. No .htaccess.
Every favicon override is handled purely at runtime via WordPress’s native get_site_icon_url and site_icon_meta_tags filter hooks. Nothing is written to disk. Nothing changes in your hosting configuration.
Performance-Optimised Asset Loading
Admin scripts (wp_enqueue_media, picker JS, admin CSS) are loaded only on the exact admin screens that need them: post edit screens, taxonomy add/edit screens, and the plugin settings page. Zero extra assets load anywhere else in the admin.
Secure by Default
All save paths are protected by WordPress nonce verification, current_user_can() capability checks, and strict input sanitisation (esc_url_raw, sanitize_key, sanitize_text_field). Post meta is exposed to the REST API only through a scoped auth_callback.
Clean Uninstall
A dedicated uninstall.php removes all post meta, term meta, and plugin options when the plugin is deleted. Elementor settings are surgically cleaned — only the plugin’s own keys are removed, leaving all other Elementor settings intact.