{"id":258445,"date":"2025-11-11T16:06:02","date_gmt":"2025-11-11T16:06:02","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/php-compatibility-scanner\/"},"modified":"2026-01-07T10:17:20","modified_gmt":"2026-01-07T10:17:20","slug":"brightleaf-digital-php-compatibility-scanner","status":"publish","type":"plugin","link":"https:\/\/szl.wordpress.org\/plugins\/brightleaf-digital-php-compatibility-scanner\/","author":23080606,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.0.1","stable_tag":"1.0.1","tested":"6.9.4","requires":"","requires_php":"7.4","requires_plugins":null,"header_name":"BrightLeaf Digital PHP Compatibility Scanner","header_author":"BrightLeaf Digital","header_description":"Scan WordPress plugins for PHP compatibility issues between current PHP and newer versions. Shows inline results and stores scan summaries.","assets_banners_color":"","last_updated":"2026-01-07 10:17:20","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/brightleafdigital.io\/","rating":0,"author_block_rating":0,"active_installs":100,"downloads":765,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"eitanatbrightleaf","date":"2025-11-11 16:05:58"},"1.0.1":{"tag":"1.0.1","author":"eitanatbrightleaf","date":"2026-01-07 10:17:20"}},"upgrade_notice":[],"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.0.1"],"block_files":[],"assets_screenshots":[],"screenshots":[],"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[3005,662,2391,1181,1249],"plugin_category":[43],"plugin_contributors":[244262],"plugin_business_model":[],"class_list":["post-258445","plugin","type-plugin","status-publish","hentry","plugin_tags-compatibility","plugin_tags-php","plugin_tags-plugins","plugin_tags-scan","plugin_tags-themes","plugin_category-customization","plugin_contributors-eitanatbrightleaf","plugin_committers-eitanatbrightleaf"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/brightleaf-digital-php-compatibility-scanner.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>PHP Compatibility Scanner helps you assess whether your site\u2019s code (plugins and themes) is likely to run on newer versions of PHP. It performs static analysis using PHP_CodeSniffer and the PHPCompatibilityWP ruleset to flag code patterns that are incompatible with the selected target PHP version.<\/p>\n\n<p>What the plugin does (at a glance):\n- Compares your current runtime PHP (baseline) to a selected target PHP version (8.0\u20138.4).\n- Scans plugins and themes, then highlights only the new issues that would appear on the target version (the \u201cdelta\u201d).\n- Shows results in a clear report on the Tools screen and adds small badges on the Plugins list screen.\n- Lets you pause, resume, or stop a running scan.<\/p>\n\n<p>Important limitations of static analysis:\n- Static analysis can miss issues in dynamic code paths and can generate false positives. Treat results as guidance, not guarantees. Always test site functionality on a staging environment before upgrading PHP in production.<\/p>\n\n<h3>Features<\/h3>\n\n<ul>\n<li>Select a target PHP version (8.0, 8.1, 8.2, 8.3, 8.4)<\/li>\n<li>Scan all plugins or select specific ones<\/li>\n<li>Scan all themes or select specific ones, with an option to also scan a parent if a child theme is selected<\/li>\n<li>Pause\/Resume\/Stop controls for long scans<\/li>\n<li>Clear report of only the new issues between baseline (current runtime) and target<\/li>\n<li>Plugin list badges showing a quick summary for the last scan<\/li>\n<\/ul>\n\n<h3>Privacy<\/h3>\n\n<p>All analysis runs locally on your server. No data is sent to external services by this plugin.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install the plugin via Plugins \u2192 Add New \u2192 Upload Plugin, or place the <code>bld-php-compatibility-checker<\/code> folder into <code>wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate the plugin through the \u201cPlugins\u201d menu in WordPress.<\/li>\n<li>Go to Tools \u2192 PHP Compatibility Checker.<\/li>\n<li>Choose a Target PHP version higher than your current runtime.<\/li>\n<li>Select what to scan (plugins and\/or themes) and click \u201cRun scan\u201d.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id='what%20php%20versions%20can%20i%20target%3F'><h3>What PHP versions can I target?<\/h3><\/dt>\n<dd><p>You can select one of: 8.0, 8.1, 8.2, 8.3, or 8.4.<\/p><\/dd>\n<dt id='what%20is%20the%20minimum%20php%20version%20required%20to%20run%20this%20plugin%3F'><h3>What is the minimum PHP version required to run this plugin?<\/h3><\/dt>\n<dd><p>The plugin requires PHP 7.4+ to run.<\/p><\/dd>\n<dt id='does%20this%20modify%20my%20code%3F'><h3>Does this modify my code?<\/h3><\/dt>\n<dd><p>No. It only analyzes code and reports findings.<\/p><\/dd>\n<dt id='why%20are%20there%20false%20positives%20or%20missing%20issues%3F'><h3>Why are there false positives or missing issues?<\/h3><\/dt>\n<dd><p>Static analysis examines code without executing it. Dynamic patterns, conditional code paths, and environment-specific behavior can cause both false positives and false negatives. Use the results as guidance and verify on a staging site.<\/p><\/dd>\n<dt id='does%20it%20scan%20mu-plugins%3F'><h3>Does it scan MU-plugins?<\/h3><\/dt>\n<dd><p>No. MU-plugins are intentionally skipped.<\/p><\/dd>\n<dt id='do%20i%20need%20wp-cron%20for%20scans%3F'><h3>Do I need WP-Cron for scans?<\/h3><\/dt>\n<dd><p>No. Scans advance via AJAX polling while the Tools page is open.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Add support for PHP 8.5<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Scans plugins and themes against target PHP versions (8.0\u20138.4)<\/li>\n<li>Pause\/Resume\/Stop controls<\/li>\n<li>CLI-first engine with embedded fallback<\/li>\n<li>AJAX-driven progress (no WP-Cron)<\/li>\n<li>Plugin list badges for the last scan summary<\/li>\n<\/ul>","raw_excerpt":"This plugin scans your installed plugins and themes for potential PHP compatibility issues when upgrading to newer PHP versions.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/258445","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=258445"}],"author":[{"embeddable":true,"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/eitanatbrightleaf"}],"wp:attachment":[{"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=258445"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=258445"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=258445"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=258445"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=258445"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/szl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=258445"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}