78% launchpad-by-obox

Code Review | Launchpad - Coming Soon & Maintenance Mode Plugin

WordPress plugin Launchpad - Coming Soon & Maintenance Mode Plugin scored 78% from 54 tests.

About plugin

  • Plugin page: launchpad-by-obox
  • Plugin version: 1.0.13
  • PHP version: 7.4.16
  • WordPress compatibility: 4.0-4.6.1
  • WordPress version: 5.8.1
  • First release: Jun 14, 2012
  • Latest release: Sep 30, 2016
  • Number of updates: 46
  • Update frequency: every 34.0 days
  • Top authors: obox (100%)

Code review

54 tests

User reviews

15 reviews

Install metrics

2,000+ active / 91,918 total downloads

Benchmarks

Plugin footprint 83% from 16 tests

Installer Passed 1 test

🔺 Critical test (weight: 50) | The install procedure must perform silently
The plugin installed gracefully, with no errors

Server metrics [RAM: ▲0.20MB] [CPU: ▼156.65ms] Passed 4 tests

A check of server-side resources used by Launchpad - Coming Soon & Maintenance Mode Plugin
This plugin does not affect your website's performance
PageMemory (MB)CPU Time (ms)
Home /2.98 ▲0.2634.76 ▲14.13
Dashboard /wp-admin3.25 ▲0.2048.45 ▼2.33
Posts /wp-admin/edit.php3.36 ▲0.2543.73 ▼1.64
Add New Post /wp-admin/post-new.php5.61 ▲0.1893.92 ▼623.58
Media Library /wp-admin/upload.php3.19 ▲0.1936.16 ▲0.97

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

Filesystem and database footprint
This plugin was installed successfully
Filesystem: 108 new files
Database: no new tables, 2 new options
New WordPress options
apollo_display_options
apollo_order_options

Browser metrics Passed 4 tests

A check of browser resources used by Launchpad - Coming Soon & Maintenance Mode Plugin
This plugin has a minimal impact on browser resources
PageNodesMemory (MB)Script (ms)Layout (ms)
Home /3,723 ▲12716.30 ▲0.699.74 ▼4.1046.05 ▲0.05
Dashboard /wp-admin2,990 ▲536.02 ▲0.06143.31 ▼7.9298.98 ▼19.19
Posts /wp-admin/edit.php2,759 ▲202.71 ▼0.0170.80 ▲2.7389.81 ▼19.07
Add New Post /wp-admin/post-new.php1,696 ▲8118.43 ▼3.00381.32 ▲76.10113.11 ▲4.86
Media Library /wp-admin/upload.php1,827 ▲175.01 ▼0.03150.81 ▲0.57122.75 ▲7.23

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

🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
It is recommended to fix the following
  • This plugin does not fully uninstall, leaving 2 options in the database
    • apollo_order_options
    • apollo_display_options

Smoke tests 50% from 4 tests

Server-side errors Passed 1 test

🔹 Test weight: 20 | Just a short smoke test targeting errors on the server (in the Apache logs)
The smoke test was a success, however most plugin functionality was not tested

SRP 0% from 2 tests

🔹 Tests weight: 20 | The single-responsibility principle: PHP files have to remain inert when accessed directly, throwing no errors and performing no actions
The following issues need your attention
  • 1× PHP files output text when accessed directly:
    • > /wp-content/plugins/launchpad-by-obox/themes/apollo/social-links.php
  • 16× GET requests to PHP files trigger server-side errors or Error 500 responses (only 10 are shown):
    • > PHP Warning
      opendir(LAUNCHPADDIRfunctions/): failed to open dir: No such file or directory in wp-content/plugins/launchpad-by-obox/functions/load-includes.php on line 6
    • > PHP Fatal error
      Uncaught Error: Call to undefined function get_template_directory() in wp-content/plugins/launchpad-by-obox/themes/apollo/archive.php:1
    • > PHP Warning
      Use of undefined constant LAUNCHPADDIR - assumed 'LAUNCHPADDIR' (this will throw an Error in a future version of PHP) in wp-content/plugins/launchpad-by-obox/functions/load-includes.php on line 5
    • > PHP Fatal error
      Uncaught Error: Call to undefined function wp_footer() in wp-content/plugins/launchpad-by-obox/themes/apollo/footer.php:18
    • > PHP Fatal error
      Uncaught Error: Call to undefined function current_time() in wp-content/plugins/launchpad-by-obox/themes/apollo/count-down-timer.php:4
    • > PHP Fatal error
      Uncaught Error: Call to undefined function get_template_directory() in wp-content/plugins/launchpad-by-obox/themes/apollo/archive-product.php:1
    • > PHP Notice
      Trying to access array offset on value of type null in wp-content/plugins/launchpad-by-obox/themes/apollo/count-down-timer.php on line 2
    • > PHP Fatal error
      Uncaught Error: Call to undefined function language_attributes() in wp-content/plugins/launchpad-by-obox/themes/apollo/header.php:3
    • > PHP Notice
      Trying to access array offset on value of type null in wp-content/plugins/launchpad-by-obox/themes/apollo/welcome.php on line 2
    • > PHP Notice
      Trying to access array offset on value of type null in wp-content/plugins/launchpad-by-obox/themes/apollo/welcome.php on line 2

User-side errors Passed 1 test

🔹 Test weight: 20 | This is a smoke test targeting browser errors/issues
No browser errors were detected

Optimizations

Plugin configuration 90% from 29 tests

readme.txt 94% from 16 tests

It's important to format your readme.txt file correctly as it is parsed for the public listing of your plugin
These attributes need to be fixed:
  • Screenshots: These screenshots require images: #1 (Launchpad Activated), #2 (General Settings), #3 (Control the look and feel)
Please take inspiration from this readme.txt

launchpad-by-obox/index.php 85% from 13 tests

The principal PHP file in "Launchpad - Coming Soon & Maintenance Mode Plugin" v. 1.0.13 is loaded by WordPress automatically on each request
It is important to fix the following:
  • Description: Please keep the plugin description shorter than 140 characters (currently 145 characters long)
  • Main file name: The principal plugin file should be the same as the plugin slug ("launchpad-by-obox.php" instead of "index.php")

Code Analysis Passed 3 tests

File types Passed 1 test

🔸 Test weight: 35 | A short review of files and their extensions; it is not recommended to include executable files
Everything looks great! No dangerous files found in this plugin3,691 lines of code in 34 files:
LanguageFilesBlank linesComment linesLines of code
JavaScript52333111,918
PHP16159441,079
CSS13154286694

PHP code Passed 2 tests

Analyzing logical lines of code, cyclomatic complexity, and other code metrics
No complexity issues detected
Cyclomatic complexity
Average complexity per logical line of code0.29
Average class complexity31.00
▷ Minimum class complexity7.00
▷ Maximum class complexity44.00
Average method complexity4.00
▷ Minimum method complexity1.00
▷ Maximum method complexity25.00
Code structure
Namespaces0
Interfaces0
Traits0
Classes3
▷ Abstract classes00.00%
▷ Concrete classes3100.00%
▷ Final classes00.00%
Methods30
▷ Static methods00.00%
▷ Public methods30100.00%
▷ Protected methods00.00%
▷ Private methods00.00%
Functions5
▷ Named functions5100.00%
▷ Anonymous functions00.00%
Constants2
▷ Global constants2100.00%
▷ Class constants00.00%
▷ Public constants00.00%

Plugin size Passed 2 tests

Image compression Passed 2 tests

All PNG images should be compressed to minimize bandwidth usage for end users
40 compressed PNG files occupy 0.50MB
Potential savings
Compression of 5 random PNG files using pngquant
FileSize - originalSize - compressedSavings
css/images/ios-style-checkboxes/on.png2.44KB2.48KB0.00%
themes/apollo/images/facebook_32.png0.87KB0.71KB▼ 17.68%
css/images/ui-bg_glass_100_f8f8f8_1x400.png0.10KB0.11KB0.00%
css/images/iphone-style-checkboxes/slider_left.png0.32KB0.44KB0.00%
css/images/ios-style-checkboxes/slider_center.png0.25KB0.35KB0.00%