Benchmarks
Plugin footprint Passed 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Checking the installer triggered no errors
The plugin installed successfully, without throwing any errors or notices
Server metrics [RAM: ▲0.04MB] [CPU: ▼301.78ms] Passed 4 tests
This is a short check of server-side resources used by Advanced Custom Fields options import/export
This plugin does not affect your website's performance
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.58 ▲0.07 | 59.17 ▲10.08 |
Dashboard /wp-admin | 3.48 ▲0.06 | 33.28 ▼1.52 |
Posts /wp-admin/edit.php | 3.71 ▲0.06 | 36.43 ▼1.33 |
Add New Post /wp-admin/post-new.php | 6.95 ▼0.03 | 97.80 ▼1,202.73 |
Media Library /wp-admin/upload.php | 3.36 ▲0.06 | 23.66 ▼1.53 |
ACF import/export /wp-admin/tools.php?page=acf-import-export | 3.33 | 23.43 |
Server storage [IO: ▲3.37MB] [DB: ▲0.00MB] Passed 3 tests
Input-output and database impact of this plugin
This plugin installed successfully
Filesystem: 170 new files
Database: no new tables, no new options
Browser metrics Passed 4 tests
Checking browser requirements for Advanced Custom Fields options import/export
There were no issues detected in relation to browser resource usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,768 ▲24 | 15.82 ▲0.07 | 5.61 ▼1.67 | 3.05 ▲0.95 |
Dashboard /wp-admin | 2,893 ▲32 | 6.14 ▼0.02 | 119.34 ▼11.54 | 157.93 ▼4.50 |
Posts /wp-admin/edit.php | 2,693 ▼1 | 3.23 ▼0.00 | 67.03 ▲3.67 | 137.14 ▲2.26 |
Add New Post /wp-admin/post-new.php | 1,664 ▼26 | 16.31 ▼4.57 | 415.37 ▼32.85 | 157.38 ▼1.18 |
Media Library /wp-admin/upload.php | 1,706 ▲8 | 5.43 ▼0.10 | 143.61 ▲0.98 | 186.28 ▼3.02 |
ACF import/export /wp-admin/tools.php?page=acf-import-export | 980 | 2.36 | 54.31 | 100.24 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] Passed 4 tests
🔸 Tests weight: 35 | Verifying that this plugin uninstalls completely without leaving any traces
The plugin uninstalled successfully, without leaving any zombie files or tables
Smoke tests 50% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | This is a short smoke test looking for server-side errors
Good news, no errors were detected
SRP 0% from 2 tests
🔹 Tests weight: 20 | SRP (Single-Responsibility Principle) - PHP files must act as libraries and never output text or perform any action when accessed directly in a browser
Almost there! Just fix the following items
- 1× PHP files output text when accessed directly:
- > /wp-content/plugins/acf-options-importexport/freemius/templates/ajax-loader.php
- 8× PHP files trigger server errors when accessed directly:
- > PHP Fatal error
Uncaught Error: Call to undefined function freemius() in wp-content/plugins/acf-options-importexport/freemius/templates/partials/network-activation.php:6
- > PHP Fatal error
Uncaught Error: Call to a member function get_slug() on null in wp-content/plugins/acf-options-importexport/freemius/templates/account/partials/addon.php:9
- > PHP Notice
Trying to access array offset on value of type null in wp-content/plugins/acf-options-importexport/freemius/templates/account/partials/addon.php on line 6
- > PHP Notice
Trying to access array offset on value of type null in wp-content/plugins/acf-options-importexport/freemius/templates/account/partials/addon.php on line 8
- > PHP Notice
Undefined variable: VARS in wp-content/plugins/acf-options-importexport/freemius/templates/account/partials/addon.php on line 8
- > PHP Notice
Undefined variable: VARS in wp-content/plugins/acf-options-importexport/freemius/templates/account/partials/addon.php on line 6
- > PHP Notice
Trying to access array offset on value of type null in wp-content/plugins/acf-options-importexport/freemius/templates/account/partials/addon.php on line 7
- > PHP Notice
Undefined variable: VARS in wp-content/plugins/acf-options-importexport/freemius/templates/account/partials/addon.php on line 7
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | A shallow check that no browser errors were triggered
There were no browser issues found
Optimizations
Plugin configuration 93% from 29 tests
readme.txt Passed 16 tests
The readme.txt file describes your plugin functionality and requirements and it is parsed to prepare the your plugin's listing
4 plugin tags: advanced custom fields, acf options export, acf options import, acf
acf-options-importexport/acf-import-export.php 85% from 13 tests
The main PHP script in "Advanced Custom Fields options import/export" version 1.0.4 is automatically included on every request by WordPress
It is important to fix the following:
- Main file name: Even though not officially enforced, the main plugin file should be the same as the plugin slug ("acf-options-importexport.php" instead of "acf-import-export.php")
- Text Domain: The text domain is optional since WordPress version 4.6; if you do specify it, it must be the same as the plugin slug
Code Analysis 97% from 3 tests
File types Passed 1 test
🔸 Test weight: 35 | This is an overview of file extensions present in this plugin and a short test that no dangerous files are bundled with this plugin
Success! There were no dangerous files found in this plugin41,249 lines of code in 131 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 105 | 6,726 | 15,290 | 28,226 |
PO File | 10 | 5,710 | 6,913 | 12,558 |
JavaScript | 3 | 34 | 59 | 194 |
Markdown | 1 | 61 | 0 | 192 |
CSS | 11 | 6 | 0 | 52 |
JSON | 1 | 0 | 0 | 27 |
PHP code 50% from 2 tests
Cyclomatic complexity and code structure are the fingerprint of this plugin
These items need your attention
- Please reduce cyclomatic complexity of classes to less than 1000 (currently 2,609)
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.62 |
Average class complexity | 82.30 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 2,609.00 |
Average method complexity | 4.53 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 86.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 46 | |
▷ Abstract classes | 2 | 4.35% |
▷ Concrete classes | 44 | 95.65% |
▷ Final classes | 0 | 0.00% |
Methods | 1,091 | |
▷ Static methods | 170 | 15.58% |
▷ Public methods | 760 | 69.66% |
▷ Protected methods | 15 | 1.37% |
▷ Private methods | 316 | 28.96% |
Functions | 91 | |
▷ Named functions | 91 | 100.00% |
▷ Anonymous functions | 0 | 0.00% |
Constants | 119 | |
▷ Global constants | 96 | 80.67% |
▷ Class constants | 23 | 19.33% |
▷ Public constants | 23 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
Using a strong compression for your PNG files is a great way to speed-up your plugin
2 PNG files occupy 0.02MB with 0.01MB in potential savings
Potential savings
Compression of 2 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
freemius/assets/img/theme-icon.png | 10.97KB | 5.78KB | ▼ 47.37% |
freemius/assets/img/plugin-icon.png | 9.16KB | 5.26KB | ▼ 42.58% |