88% wp-flybox

Code Review | WP-FlyBox

WordPress plugin WP-FlyBox scored 88% from 54 tests.

About plugin

  • Plugin page: wp-flybox
  • Plugin version: 6.46
  • PHP version: 7.4.16
  • WordPress compatibility: 3.0-4.7
  • WordPress version: 5.8.1
  • First release: Aug 15, 2012
  • Latest release: Apr 10, 2017
  • Number of updates: 333
  • Update frequency: every 5.1 days
  • Top authors: cconoly (100%)

Code review

54 tests

User reviews

22 reviews

Install metrics

1,000+ active / 61,698 total downloads

Benchmarks

Plugin footprint Passed 16 tests

Installer Passed 1 test

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

Server metrics [RAM: ▲0.02MB] [CPU: ▼138.47ms] Passed 4 tests

An overview of server-side resources used by WP-FlyBox
This plugin does not affect your website's performance
PageMemory (MB)CPU Time (ms)
Home /2.86 ▲0.0337.36 ▲8.68
Dashboard /wp-admin3.09 ▲0.0349.88 ▲1.83
Posts /wp-admin/edit.php3.14 ▲0.0348.82 ▲8.80
Add New Post /wp-admin/post-new.php5.44 ▲0.0191.66 ▼567.56
Media Library /wp-admin/upload.php3.03 ▲0.0336.84 ▲3.18
WP-FlyBox /wp-admin/options-general.php?page=WP-FlyBox3.44467.80

Server storage [IO: ▲1.09MB] [DB: ▲0.01MB] Passed 3 tests

A short overview of filesystem and database impact
There were no storage issued detected upon installing this plugin
Filesystem: 195 new files
Database: no new tables, 256 new options
New WordPress options
wpflybox_my_subscription_tab_height
wpflybox_tab6_auto_out_cookie
wpflybox_deviant_onclick_js
wpflybox_my_twitter_tab
wpflybox_tab4
wpflybox_tab2
wpflybox_remove_filler
wpflybox_my_subscription_tab
wpflybox_my_facebook_tab_open
wpflybox_seperation
...

Browser metrics Passed 4 tests

WP-FlyBox: an overview of browser usage
This plugin has a minimal impact on browser resources
PageNodesMemory (MB)Script (ms)Layout (ms)
Home /3,813 ▲21716.19 ▲0.6814.31 ▲5.7947.06 ▲0.74
Dashboard /wp-admin2,997 ▲635.95 ▲0.02140.97 ▼6.22121.46 ▼1.27
Posts /wp-admin/edit.php2,741 ▲22.69 ▼0.0167.31 ▲1.4588.46 ▼8.06
Add New Post /wp-admin/post-new.php1,503 ▼18018.47 ▲0.14348.82 ▼26.03108.47 ▲0.75
Media Library /wp-admin/upload.php1,812 ▲55.02 ▼0.03155.30 ▲5.74116.93 ▼8.45
WP-FlyBox /wp-admin/options-general.php?page=WP-FlyBox1,4032.4555.0680.53

Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] Passed 4 tests

🔸 Tests weight: 35 | Verifying that this plugin uninstalls completely without leaving any traces
Uninstaller ran successfully

Smoke tests 50% from 4 tests

Server-side errors Passed 1 test

🔹 Test weight: 20 | This is a shallow check for server-side errors
Everything seems fine, however this is by no means an exhaustive test

SRP 0% from 2 tests

🔹 Tests weight: 20 | The single-responsibility principle applies for WordPress plugins as well - please make sure your PHP files perform no actions when accessed directly
The following issues need your attention
  • 2× PHP files output text when accessed directly:
    • > /wp-content/plugins/wp-flybox/contact.php
    • > /wp-content/plugins/wp-flybox/static/securityimage/security-image.php
  • 41× PHP files trigger errors when accessed directly with GET requests (only 10 are shown):
    • > PHP Fatal error
      Uncaught Error: Call to undefined function get_option() in wp-content/plugins/wp-flybox/includes/googleplus_content.php:1
    • > PHP Fatal error
      Uncaught Error: Call to undefined function get_option() in wp-content/plugins/wp-flybox/includes/custom4_tab.php:3
    • > PHP Fatal error
      Uncaught Error: Call to undefined function get_option() in wp-content/plugins/wp-flybox/includes/twitter_content.php:2
    • > PHP Fatal error
      Uncaught Error: Call to undefined function get_option() in wp-content/plugins/wp-flybox/includes/facebook_content.php:2
    • > PHP Fatal error
      Uncaught Error: Call to undefined function get_option() in wp-content/plugins/wp-flybox/head_import.php:7
    • > PHP Fatal error
      Uncaught Error: Call to undefined function get_option() in wp-content/plugins/wp-flybox/includes/custom4_content.php:2
    • > PHP Fatal error
      Uncaught Error: Call to undefined function get_option() in wp-content/plugins/wp-flybox/includes/pinterest_tab.php:2
    • > PHP Fatal error
      Uncaught Error: Call to undefined function get_option() in wp-content/plugins/wp-flybox/includes/pinterest_content.php:2
    • > PHP Fatal error
      Uncaught Error: Call to undefined function get_option() in wp-content/plugins/wp-flybox/includes/tumblr_tab.php:2
    • > PHP Fatal error
      Uncaught Error: Call to undefined function get_option() in wp-content/plugins/wp-flybox/includes/contact_tab.php:2

User-side errors Passed 1 test

🔹 Test weight: 20 | A shallow check that no browser errors were triggered
Everything seems fine, but this is not an exhaustive test

Optimizations

Plugin configuration 90% from 29 tests

readme.txt 88% from 16 tests

Don't ignore readme.txt as it is the file that instructs WordPress.org on how to present your plugin to the world
These attributes need your attention:
  • Screenshots: These screenshots require images: #1 (Some of the default tabs.), #2 (Tabs on the left side of page.), #3 (Example of custom colored tabs to match your theme.), #4 (LinkedIn hovered over.), #5 (Facebook hovered over.), #6 (Display options.), #7 (Tab setup and configuration.), #8 (Custom color configuration)
  • Tags: You are using too many tags: 24 tag instead of maximum 10
The official readme.txt is a good inspiration

wp-flybox/wp-flybox.php 92% from 13 tests

Analyzing the main PHP file in "WP-FlyBox" version 6.46
You should first fix the following items:
  • Description: Please keep the plugin description shorter than 140 characters (currently 163 characters long)

Code Analysis Passed 3 tests

File types Passed 1 test

🔸 Test weight: 35 | An overview of files in this plugin; executable files are not allowed
Everything looks great! No dangerous files found in this plugin6,262 lines of code in 56 files:
LanguageFilesBlank linesComment linesLines of code
PHP54592,4775,483
JavaScript2038779

PHP code Passed 2 tests

This is a short overview of cyclomatic complexity and code structure for this plugin
Although this was not an exhaustive test, there were no cyclomatic complexity issues detected
Cyclomatic complexity
Average complexity per logical line of code0.20
Average class complexity37.75
▷ Minimum class complexity4.00
▷ Maximum class complexity107.00
Average method complexity2.01
▷ Minimum method complexity1.00
▷ Maximum method complexity63.00
Code structure
Namespaces0
Interfaces0
Traits0
Classes4
▷ Abstract classes00.00%
▷ Concrete classes4100.00%
▷ Final classes00.00%
Methods146
▷ Static methods96.16%
▷ Public methods14297.26%
▷ Protected methods21.37%
▷ Private methods21.37%
Functions26
▷ Named functions26100.00%
▷ Anonymous functions00.00%
Constants9
▷ Global constants00.00%
▷ Class constants9100.00%
▷ Public constants9100.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
130 compressed PNG files occupy 0.62MB
Potential savings
Compression of 5 random PNG files using pngquant
FileSize - originalSize - compressedSavings
static/icons/custom/webcam.png1.11KB1.14KB0.00%
static/icons/custom/arrow_down.png0.48KB0.49KB0.00%
static/icons/custom/info.png0.67KB0.68KB0.00%
static/icons/custom/old_phone.png0.70KB0.72KB0.00%
static/icons/facebook.png0.51KB0.52KB0.00%