
If-So Dynamic Content – Elementor & All Page Builders Personalization Security & Risk Analysis
wordpress.org/plugins/if-soThe ultimate solution for advanced display conditions and Geolocation - easy to use with Elementor, Gutenberg, and all page builders.
Is If-So Dynamic Content – Elementor & All Page Builders Personalization Safe to Use in 2026?
Generally Safe
Score 96/100If-So Dynamic Content – Elementor & All Page Builders Personalization has a strong security track record. Known vulnerabilities have been patched promptly. It's a solid choice for most WordPress installations.
The plugin "if-so" v1.9.6 exhibits a mixed security posture, with some concerning aspects despite a relatively clean recent vulnerability history. The static analysis reveals a significant attack surface, with all 13 AJAX handlers lacking authentication checks. This is a major concern as it allows any user, potentially unauthenticated, to interact with sensitive plugin functionalities. While the taint analysis shows no critical or high severity flows, the presence of one flow with unsanitized paths warrants attention, even if it didn't manifest as a severe vulnerability in the analysis.
The plugin's vulnerability history, with 8 medium severity CVEs, is a notable weakness. The common types of these vulnerabilities—Authorization Bypass, Cross-site Scripting, and Missing Authorization—directly correlate with the identified weaknesses in the static analysis, particularly the unprotected AJAX handlers and potentially the output escaping which is only 22% properly escaped. The fact that the last vulnerability was in the past and is currently unpatched suggests that while the plugin may have addressed past issues, the underlying patterns of insecurity persist. The presence of bundled outdated jQuery (v3.4.1) is also a minor concern.
In conclusion, while the absence of critical vulnerabilities and the use of prepared statements for a majority of SQL queries are positive signs, the high number of unprotected AJAX endpoints and the history of medium severity security issues, especially those related to authorization and XSS, indicate a need for significant security improvements. The low rate of proper output escaping further amplifies the risk associated with unprotected entry points.
Key Concerns
- 13 unprotected AJAX handlers
- Low output escaping rate (22%)
- 8 medium severity CVEs in history
- Flow with unsanitized paths detected
- Bundled outdated jQuery v3.4.1
If-So Dynamic Content – Elementor & All Page Builders Personalization Security Vulnerabilities
CVEs by Year
Severity Breakdown
8 total CVEs
If-So Dynamic Content Personalization <= 1.9.4 - Authenticated (Contributor+) Stored Cross-Site Scripting
If-So Dynamic Content Personalization <= 1.9.3.1 - Authenticated (Contributor+) Stored Cross-Site Scripting
If-So Dynamic Content Personalization <= 1.9.2.1 - Authenticated (Contributor+) Post Disclosure
If-So Dynamic Content Personalization <= 1.8.0.3 - Reflected Cross-Site Scripting
If-So Dynamic Content Personalization <= 1.8.0.3 - Authenticated (Admin+) Stored Cross-Site Scripting
If-So Dynamic Content Personalization <= 1.8.0.2 - Authenticated (Contributor+) Stored Cross-Site Scripting
If-So Dynamic Content Personalization <= 1.7.1 - Missing Authorization
If-So Dynamic Content Personalization <= 1.6.3.1 - Authenticated (Contributor+) Stored Cross-Site Scripting
If-So Dynamic Content – Elementor & All Page Builders Personalization Release Timeline
If-So Dynamic Content – Elementor & All Page Builders Personalization Code Analysis
Bundled Libraries
SQL Query Safety
Output Escaping
Data Flow Analysis
If-So Dynamic Content – Elementor & All Page Builders Personalization Attack Surface
AJAX Handlers 13
Shortcodes 13
WordPress Hooks 95
Maintenance & Trust
If-So Dynamic Content – Elementor & All Page Builders Personalization Maintenance & Trust
Maintenance Signals
Community Trust
If-So Dynamic Content – Elementor & All Page Builders Personalization Alternatives
ForgePress Country Choice Rules for Gravity Forms
forgepress-country-choice-rules-for-gravity-forms
Country-based choice rules for Gravity Forms. Hide or replace field choices per country, with optional VPN/Proxy handling.
Conditional Fields for Contact Form 7
cf7-conditional-fields
Adds conditional logic to Contact Form 7.
SlimStat Analytics
wp-slimstat
Real-time WordPress analytics that stay on your own server: pageviews, outbound links, WooCommerce funnels, all privacy-first and GDPR-ready.
Visibility Logic for Elementor
visibility-logic-elementor
Conditional visibility for Elementor — show or hide widgets based on user role, ACF fields, device type, date & time, browser and more.
Geolocation IP Detection
geoip-detect
Provides geographic information detected by an IP adress.
If-So Dynamic Content – Elementor & All Page Builders Personalization Developer Profile
3 plugins · 9K total installs
How We Detect If-So Dynamic Content – Elementor & All Page Builders Personalization
Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.
Asset Fingerprints
/wp-content/plugins/if-so/admin/css/bootstrap.min.css/wp-content/plugins/if-so/admin/css/font-awesome-4.7.0/css/font-awesome.min.css/wp-content/plugins/if-so/admin/css/modalStyle.css/wp-content/plugins/if-so/admin/css/if-so-admin.css/wp-content/plugins/if-so/admin/css/jquery-ui.min.css/wp-content/plugins/if-so/admin/css/jquery.ifsoDateTime.css/wp-content/plugins/if-so/admin/css/if-so-geo.css/wp-content/plugins/if-so/admin/css/if-so-settings.css+16 more/wp-content/plugins/if-so/admin/js/if-so-admin.js/wp-content/plugins/if-so/admin/js/if-so-settings.js/wp-content/plugins/if-so/admin/js/if-so-license.js/wp-content/plugins/if-so/admin/js/if-so-dki.js/wp-content/plugins/if-so/admin/js/if-so-geo.js/wp-content/plugins/if-so/admin/js/if-so-custom-conditions.js+8 morever=if-so/admin/css/bootstrap.min.css?ver=if-so/admin/css/font-awesome-4.7.0/css/font-awesome.min.css?ver=if-so/admin/css/modalStyle.css?ver=if-so/admin/css/if-so-admin.css?ver=if-so/admin/css/jquery-ui.min.css?ver=if-so/admin/css/jquery.ifsoDateTime.css?ver=if-so/admin/css/if-so-geo.css?ver=if-so/admin/css/if-so-settings.css?ver=if-so/admin/css/if-so-license.css?ver=if-so/admin/css/if-so-dki.css?ver=if-so/admin/js/if-so-admin.js?ver=if-so/admin/js/if-so-settings.js?ver=if-so/admin/js/if-so-license.js?ver=if-so/admin/js/if-so-dki.js?ver=if-so/admin/js/if-so-geo.js?ver=if-so/admin/js/if-so-custom-conditions.js?ver=if-so/admin/js/if-so-conditions-builder.js?ver=if-so/admin/js/if-so-edit-post.js?ver=if-so/admin/js/if-so-triggers.js?ver=if-so/admin/js/if-so-editor.js?ver=if-so/admin/js/if-so-editor-element.js?ver=if-so/admin/js/if-so-editor-media.js?ver=if-so/admin/js/if-so-tinymce.js?ver=if-so/public/js/if-so.js?ver=HTML / DOM Fingerprints
if-so-trigger-settingsif-so-shortcode-displayifso_triggers_metaboxifso_shortcode_displayifso-field-labelifso-conditions-builderifso-condition-rowifso-condition-select+17 morecollision fix with other pluginsIncludes all the JS files in the admin areaIncludes all the JS files for the public-facing side of the siteThis is the editor for the condition+2 moredata-ifso-condition-iddata-ifso-condition-typedata-ifso-condition-valuedata-ifso-preview-modedata-ifso-selected-elementdata-ifso-editor-mode+4 moreifSoAdminifSoSettingsifSoLicenseifSoDKIifSoGeoifSoCustomConditions+8 more/wp-json/if-so/v1/triggers/wp-json/if-so/v1/conditions/wp-json/if-so/v1/content/wp-json/if-so/v1/settings/wp-json/if-so/v1/geo/locations/wp-json/if-so/v1/dki[ifsodo_shortcode('[ifso