10% acquaint-slick-slider

Code Review | Acquaint Slick Slider

WordPress plugin Acquaint Slick Slider scored10%from 54 tests.

About plugin

  • Plugin page: acquaint-slick-sl...
  • Plugin version: 1.0.0
  • PHP version: 7.4.16
  • WordPress compatibility: 3.0.1-4.7.1
  • WordPress version: 6.3.1
  • First release: Jan 25, 2017
  • Latest release: Jan 25, 2017
  • Number of updates: 2
  • Update frequency: N/A
  • Top authors: itcoderr (100%)

Code review

54 tests

User reviews

1 review

Install metrics

10+ active /1,137 total downloads

Benchmarks

Plugin footprint 40% from 16 tests

Installer 0% from 1 test

🔺 Critical test (weight: 50) | It is important to correctly install your plugin, without throwing errors or notices
You still need to fix the following installer errors
  • Install procedure had errors
    • > Warning in wp-includes/class-wp-hook.php+310
    call_user_func_array() expects parameter 1 to be a valid callback, function 'activate_acq_slick_slider' not found or invalid function name

Server metrics [RAM: ▲0.15MB] [CPU: ▼4.66ms] Passed 4 tests

An overview of server-side resources used by Acquaint Slick Slider
This plugin does not affect your website's performance
PageMemory (MB)CPU Time (ms)
Home /3.59 ▲0.1342.44 ▲1.82
Dashboard /wp-admin3.45 ▲0.1550.29 ▼1.34
Posts /wp-admin/edit.php3.56 ▲0.2149.41 ▼4.03
Add New Post /wp-admin/post-new.php6.05 ▲0.1789.81 ▼15.08
Media Library /wp-admin/upload.php3.37 ▲0.1439.75 ▲3.54
Add New Slider /wp-admin/post-new.php?post_type=aqs_gallery3.5349.00
All Sliders /wp-admin/edit.php?post_type=aqs_gallery3.4137.51

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

How much does this plugin use your filesystem and database?
This plugin was installed successfully
Filesystem: 83 new files
Database: no new tables, 6 new options
New WordPress options
theysaidso_admin_options
widget_recent-posts
widget_theysaidso_widget
db_upgraded
can_compress_scripts
widget_recent-comments

Browser metrics Passed 4 tests

Acquaint Slick Slider: an overview of browser usage
There were no issues detected in relation to browser resource usage
PageNodesMemory (MB)Script (ms)Layout (ms)
Home /2,912 ▲15513.69 ▼0.976.23 ▲4.2442.18 ▼1.88
Dashboard /wp-admin2,230 ▲455.90 ▲0.0198.48 ▼13.7740.02 ▼3.24
Posts /wp-admin/edit.php2,116 ▲272.13 ▲0.0733.55 ▼8.7334.83 ▼2.26
Add New Post /wp-admin/post-new.php1,741 ▲22725.12 ▲7.60615.43 ▼73.8634.74 ▼14.12
Media Library /wp-admin/upload.php1,418 ▲304.19 ▲0.0399.10 ▼0.0341.06 ▼3.96
Add New Slider /wp-admin/post-new.php?post_type=aqs_gallery2,1123.9973.8546.27
All Sliders /wp-admin/edit.php?post_type=aqs_gallery1,0881.9332.3530.73

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

🔸 Tests weight: 35 | All plugins must uninstall correctly, removing their source code and extra database tables they might have created
Please fix the following items
  • The plugin did not uninstall gracefully
    • > Warning in wp-includes/class-wp-hook.php+310
    call_user_func_array() expects parameter 1 to be a valid callback, function 'deactivate_acq_slick_slider' not found or invalid function name
  • This plugin does not fully uninstall, leaving 6 options in the database
    • widget_theysaidso_widget
    • theysaidso_admin_options
    • can_compress_scripts
    • widget_recent-comments
    • widget_recent-posts
    • db_upgraded

Smoke tests 25% 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)
Even though everything seems fine, this is not an exhaustive test

SRP 0% from 2 tests

🔹 Tests weight: 20 | It is important to ensure that your PHP files perform no action when accessed directly, respecting the single-responsibility principle
The following issues need your attention
  • 2× PHP files perform the action of outputting non-empty strings when accessed directly:
    • > /wp-content/plugins/acquaint-slick-slider/admin/partials/acq-slick-slider-admin-display.php
    • > /wp-content/plugins/acquaint-slick-slider/public/partials/acq-slick-slider-public-display.php
  • 8× GET requests to PHP files have triggered server-side errors or warnings:
    • > PHP Notice
      Trying to access array offset on value of type null in wp-content/plugins/acquaint-slick-slider/aqss-layout.php on line 6
    • > PHP Fatal error
      Uncaught Error: Call to undefined function plugin_dir_url() in wp-content/plugins/acquaint-slick-slider/acq-slick-slider.php:29
    • > PHP Notice
      Undefined variable: Id in wp-content/plugins/acquaint-slick-slider/aqss-layout.php on line 6
    • > PHP Notice
      Trying to get property 'ID' of non-object in wp-content/plugins/acquaint-slick-slider/acq-slick-slider-settings-meta-box.php on line 5
    • > PHP Fatal error
      Uncaught Error: Call to undefined function get_post_meta() in wp-content/plugins/acquaint-slick-slider/acq-slick-slider-settings-meta-box.php:7
    • > PHP Notice
      Undefined variable: post in wp-content/plugins/acquaint-slick-slider/acq-slick-slider-settings-meta-box.php on line 5
    • > PHP Fatal error
      Uncaught Error: Class 'WP_Query' not found in wp-content/plugins/acquaint-slick-slider/aqss-layout.php:7
    • > PHP Fatal error
      Uncaught Error: Call to undefined function add_shortcode() in wp-content/plugins/acquaint-slick-slider/acq-slick-slider-short-code.php:7

User-side errors 0% from 1 test

🔹 Test weight: 20 | Just a short smoke test targeting errors on the browser (console and network errors and warnings)
There are user-side issues you should fix
    • > GET request to /wp-admin/post-new.php?post_type=aqs_gallery
    • > Network (severe)
    wp-content/plugins/acquaint-slick-slider/tooltip/jquery.darktooltip.min.js?ver=6.3.1 - Failed to load resource: the server responded with a status of 404 (Not Found)
    • > GET request to /wp-admin/post-new.php?post_type=aqs_gallery
    • > Network (severe)
    wp-content/plugins/acquaint-slick-slider/tooltip/darktooltip.min.css?ver=6.3.1 - Failed to load resource: the server responded with a status of 404 (Not 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
7 plugin tags: slideshow, images, slider, gallery, photos...

acquaint-slick-slider/acq-slick-slider.php 85% from 13 tests

The primary PHP file in "Acquaint Slick Slider" version 1.0.0 is used by WordPress to initiate all plugin functionality
It is important to fix the following:
  • 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
  • Main file name: It is recommended to name the main PHP file as the plugin slug ("acquaint-slick-slider.php" instead of "acq-slick-slider.php")

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
Everything looks great! No dangerous files found in this plugin8,972 lines of code in 60 files:
LanguageFilesBlank linesComment linesLines of code
JavaScript91,1752943,495
Sass1326241,352
LESS1326331,343
CSS7196731,155
PHP152565981,027
SVG210578
HTML118022

PHP code Passed 2 tests

A short review of cyclomatic complexity and code structure
This plugin has no cyclomatic complexity issues
Cyclomatic complexity
Average complexity per logical line of code0.28
Average class complexity4.00
▷ Minimum class complexity1.00
▷ Maximum class complexity15.00
Average method complexity1.63
▷ Minimum method complexity1.00
▷ Maximum method complexity15.00
Code structure
Namespaces0
Interfaces0
Traits0
Classes9
▷ Abstract classes00.00%
▷ Concrete classes9100.00%
▷ Final classes00.00%
Methods43
▷ Static methods36.98%
▷ Public methods3888.37%
▷ Protected methods00.00%
▷ Private methods511.63%
Functions1
▷ Named functions1100.00%
▷ Anonymous functions00.00%
Constants2
▷ Global constants2100.00%
▷ Class constants00.00%
▷ Public constants00.00%

Plugin size Passed 2 tests

Image compression Passed 2 tests

It is recommended to compress PNG files in your plugin to minimize bandwidth usage
3 PNG files occupy 0.02MB with 0.01MB in potential savings
Potential savings
Compression of 3 random PNG files using pngquant
FileSize - originalSize - compressedSavings
css/images/delet.png0.99KB0.14KB▼ 85.45%
admin/images/delet.png0.98KB0.14KB▼ 85.37%
img/acq_Close-icon.png18.37KB8.39KB▼ 54.31%