62% filebird

Code Review | FileBird - WordPress Media Library Folders & File Manager

WordPress plugin FileBird - WordPress Media Library Folders & File Manager scored62%from 54 tests.

About plugin

  • Plugin page: filebird
  • Plugin version: 5.5.8
  • PHP version: 7.4.16
  • WordPress compatibility: 3.0-6.4
  • WordPress version: 6.3.1
  • First release: Jul 2, 2018
  • Latest release: Nov 28, 2023
  • Number of updates: 167
  • Update frequency: every 11.9 days
  • Top authors: ninjateam (100%)

Code review

54 tests

User reviews

953 reviews

Install metrics

100,000+ active /3,512,347 total downloads

Benchmarks

Plugin footprint 65% from 16 tests

Installer Passed 1 test

🔺 Critical test (weight: 50) | All plugins must install correctly, without throwing any errors, warnings, or notices
Install script ran successfully

Server metrics [RAM: ▲0.94MB] [CPU: ▲4.67ms] Passed 4 tests

Server-side resources used by FileBird - WordPress Media Library Folders & File Manager
This plugin has minimal impact on server resources
PageMemory (MB)CPU Time (ms)
Home /4.34 ▲0.8744.94 ▲1.95
Dashboard /wp-admin4.26 ▲0.9059.71 ▼2.55
Posts /wp-admin/edit.php4.37 ▲1.0162.19 ▲14.15
Add New Post /wp-admin/post-new.php6.93 ▲1.0498.31 ▲5.13
Media Library /wp-admin/upload.php4.21 ▲0.9854.11 ▲20.76
Go Pro /wp-admin/admin.php?page=go_filebird_pro4.1539.49
FileBird Settings /wp-admin/admin.php?page=filebird-settings4.4352.75
Recommended /wp-admin/admin.php?page=filebird-settings-recommended-plugins4.1540.84

Server storage [IO: ▲3.05MB] [DB: ▲0.00MB] Passed 3 tests

Input-output and database impact of this plugin
There were no storage issued detected upon installing this plugin
Filesystem: 117 new files
Database: 2 new tables, 10 new options
New tables
wp_fbv_attachment_folder
wp_fbv
New WordPress options
fbv_is_new_user
db_upgraded
widget_recent-posts
fbv_first_time_active
widget_theysaidso_widget
can_compress_scripts
fbv_version
widget_recent-comments
fbv_review
theysaidso_admin_options

Browser metrics 75% from 4 tests

Checking browser requirements for FileBird - WordPress Media Library Folders & File Manager
Please improve the following
  • Nodes: For the best user experience, please reduce the number of DOM nodes under 25,000 (currently 44,306 on /wp-admin/admin.php?page=go_filebird_pro)
PageNodesMemory (MB)Script (ms)Layout (ms)
Home /2,891 ▲15515.76 ▲1.051.83 ▲0.2428.54 ▼15.32
Dashboard /wp-admin2,280 ▲1126.84 ▲1.31152.95 ▲51.5495.66 ▲51.48
Posts /wp-admin/edit.php2,178 ▲784.32 ▲2.3557.49 ▲16.6936.07 ▼1.34
Add New Post /wp-admin/post-new.php6,248 ▲4,72227.46 ▲4.381,006.84 ▲373.4039.06 ▼18.97
Media Library /wp-admin/upload.php1,939 ▲5397.45 ▲3.22163.98 ▲65.8561.59 ▲17.34
Go Pro /wp-admin/admin.php?page=go_filebird_pro44,30611.08282.00217.46
FileBird Settings /wp-admin/admin.php?page=filebird-settings2,1754.1655.9134.12
Recommended /wp-admin/admin.php?page=filebird-settings-recommended-plugins1,1174.2861.1434.70

Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 50% from 4 tests

🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
You still need to fix the following
  • The uninstall procedure failed, leaving 2 tables in the database
    • wp_fbv
    • wp_fbv_attachment_folder
  • This plugin did not uninstall successfully, leaving 10 options in the database
    • can_compress_scripts
    • theysaidso_admin_options
    • widget_recent-comments
    • db_upgraded
    • fbv_review
    • widget_theysaidso_widget
    • fbv_version
    • fbv_first_time_active
    • fbv_is_new_user
    • widget_recent-posts

Smoke tests 25% from 4 tests

Server-side errors Passed 1 test

🔹 Test weight: 20 | This is a shallow check for server-side errors
Good news, no errors were detected

SRP 0% from 2 tests

🔹 Tests weight: 20 | A shallow check of the single-responsibility principle; PHP files should perform no action - including output of placeholder text - and trigger no errors when accessed directly
Please take a closer look at the following
  • 1× GET requests to PHP files return non-empty strings:
    • > /wp-content/plugins/filebird/views/pages/settings/tab-active.php
  • 11× GET requests to PHP files have triggered server-side errors or warnings (only 10 are shown):
    • > PHP Notice
      Undefined variable: countWpmlfFolder in wp-content/plugins/filebird/views/pages/settings/tab-import.php on line 2
    • > PHP Notice
      Undefined variable: recommendedPlugins in wp-content/plugins/filebird/includes/Recommended/views/content.php on line 22
    • > PHP Fatal error
      Uncaught Error: Call to undefined function _e() in wp-content/plugins/filebird/views/particle/folder_dropdown.php:2
    • > PHP Notice
      Undefined variable: countHappyFiles in wp-content/plugins/filebird/views/pages/settings/tab-import.php on line 2
    • > PHP Fatal error
      Uncaught Error: Call to undefined function esc_html_e() in wp-content/plugins/filebird/views/pages/settings/tab-active.php:12
    • > PHP Notice
      Undefined variable: countFemlFolder in wp-content/plugins/filebird/views/pages/settings/tab-import.php on line 2
    • > PHP Fatal error
      Uncaught Error: Call to undefined function esc_html_e() in wp-content/plugins/filebird/views/pages/settings/tab-import.php:169
    • > PHP Notice
      Undefined variable: countWpmfFolder in wp-content/plugins/filebird/views/pages/settings/tab-import.php on line 2
    • > PHP Notice
      Undefined variable: countEnhancedFolder in wp-content/plugins/filebird/views/pages/settings/tab-import.php on line 2
    • > PHP Notice
      Undefined variable: countRealMediaFolder in wp-content/plugins/filebird/views/pages/settings/tab-import.php on line 2

User-side errors 0% from 1 test

🔹 Test weight: 20 | This is a shallow check for browser errors
Please take a look at the following user-side issues
    • > GET request to /wp-admin/admin.php?page=go_filebird_pro
    • > Security (warning) in unknown
    security - Error with Feature-Policy header: Unrecognized feature: 'speaker'.

Optimizations

Plugin configuration 97% from 29 tests

readme.txt 94% from 16 tests

The readme.txt file is an important file in your plugin as it is parsed by WordPress.org to prepare the public listing of your plugin
Attributes that require attention:
  • Tags: You are using too many tags: 12 tag instead of maximum 10
The official readme.txt is a good inspiration

filebird/filebird.php Passed 13 tests

The main file in "FileBird - WordPress Media Library Folders & File Manager" v. 5.5.8 serves as a complement to information provided in readme.txt and as the entry point to the plugin
77 characters long description:
Organize thousands of WordPress media files into folders/ categories at ease.

Code Analysis Passed 3 tests

File types Passed 1 test

🔸 Test weight: 35 | There should be no dangerous file extensions present in any WordPress plugin
Success! There were no dangerous files found in this plugin26,009 lines of code in 91 files:
LanguageFilesBlank linesComment linesLines of code
PO File194,0215,56011,645
JavaScript102752,3247,213
PHP446201185,566
SVG553862
JSON1000720
CSS3003

PHP code Passed 2 tests

Analyzing cyclomatic complexity and code structure
Great job! No cyclomatic complexity issues were detected in this plugin
Cyclomatic complexity
Average complexity per logical line of code0.41
Average class complexity19.09
▷ Minimum class complexity2.00
▷ Maximum class complexity123.00
Average method complexity3.07
▷ Minimum method complexity1.00
▷ Maximum method complexity23.00
Code structure
Namespaces8
Interfaces0
Traits0
Classes32
▷ Abstract classes13.12%
▷ Concrete classes3196.88%
▷ Final classes26.45%
Methods284
▷ Static methods6623.24%
▷ Public methods24786.97%
▷ Protected methods124.23%
▷ Private methods258.80%
Functions21
▷ Named functions628.57%
▷ Anonymous functions1571.43%
Constants9
▷ Global constants9100.00%
▷ Class constants00.00%
▷ Public constants00.00%

Plugin size Passed 2 tests

Image compression Passed 2 tests

PNG files should be compressed to save space and minimize bandwidth usage
No PNG files were detected