10% slider-video

Code Review | Video Slider - Slider Carousel

WordPress plugin Video Slider - Slider Carousel scored10%from 54 tests.

About plugin

  • Plugin page: slider-video
  • Plugin version: 1.5.3
  • PHP version: 7.4.16
  • WordPress version: 6.3.1
  • First release: Aug 6, 2016
  • Latest release: Sep 23, 2023
  • Number of updates: 115
  • Update frequency: every 22.7 days
  • Top authors: richteam (100%)

Code review

54 tests

User reviews

71 reviews

Install metrics

6,000+ active /196,075 total downloads

Benchmarks

Plugin footprint 40% from 16 tests

Installer 0% from 1 test

🔺 Critical test (weight: 50) | Checking the installer triggered no errors
Please fix the following installer errors
  • This plugin did not install gracefully
    • > Notice in wp-content/plugins/slider-video/Rich-Web-Video-Slider-Install.php+169
    Undefined offset: 0

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

Analyzing server-side resources used by Video Slider - Slider Carousel
This plugin does not affect your website's performance
PageMemory (MB)CPU Time (ms)
Home /3.49 ▲0.0242.37 ▲0.63
Dashboard /wp-admin3.34 ▼0.0158.08 ▼7.16
Posts /wp-admin/edit.php3.39 ▲0.0352.45 ▲1.17
Add New Post /wp-admin/post-new.php5.94 ▲0.0595.12 ▼9.08
Media Library /wp-admin/upload.php3.26 ▲0.0337.46 ▲0.03

Server storage [IO: ▲4.71MB] [DB: ▲0.06MB] Passed 3 tests

A short overview of filesystem and database impact
No storage issues were detected
Filesystem: 221 new files
Database: 19 new tables, 7 new options
New tables
wp_rich_web_vs_effect_4_loader
wp_rich_web_video_slider_id
wp_rich_web_vs_effect_1_loader
wp_rich_web_video_slider_effects_data
wp_rich_web_vs_effect_9
wp_rich_web_vs_effect_6_loader
wp_rich_web_vs_effect_6
wp_rich_web_vs_effect_4
wp_rich_web_vs_effect_3_loader
wp_rich_web_vs_effect_1
...
New WordPress options
can_compress_scripts
db_upgraded
widget_recent-comments
widget_theysaidso_widget
widget_rich_web_video_slider
theysaidso_admin_options
widget_recent-posts

Browser metrics 75% from 4 tests

This is an overview of browser requirements for Video Slider - Slider Carousel
Please improve the following
  • Nodes: Try to keep the DOM nodes under 25,000 (currently 31,324 on /wp-admin/admin.php?page=Rich-Web Video Slider General)
PageNodesMemory (MB)Script (ms)Layout (ms)
Home /2,932 ▲17113.92 ▼0.338.80 ▲7.2344.60 ▲7.44
Dashboard /wp-admin2,232 ▲555.83 ▲0.1694.87 ▲1.2589.79 ▲48.88
Posts /wp-admin/edit.php2,154 ▲542.30 ▲0.3342.84 ▲4.4846.02 ▲6.51
Add New Post /wp-admin/post-new.php1,728 ▲20222.34 ▼1.26616.31 ▼40.9335.54 ▼24.84
Media Library /wp-admin/upload.php1,443 ▲434.57 ▲0.35102.22 ▼7.2582.02 ▲34.56
Slider Options /wp-admin/admin.php?page=Rich-Web Video Slider General31,3244.45189.7491.61
Slider Manager /wp-admin/admin.php?page=Rich-Web Video Slider Admin1,4615.3969.2690.72

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

🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
Please fix the following items
  • Zombie tables were found after uninstall: 19 tables
    • wp_rich_web_vs_effect_6_loader
    • wp_rich_web_vs_effect_8
    • wp_rich_web_video_slider_font_family
    • wp_rich_web_vs_effect_1
    • wp_rich_web_vs_effect_3_loader
    • wp_rich_web_vs_effect_4
    • wp_rich_web_video_slider_manager
    • wp_rich_web_vs_effect_3
    • wp_rich_web_vs_effect_1_loader
    • wp_rich_web_video_slider_id
    • ...
  • Zombie WordPress options detected upon uninstall: 7 options
    • widget_rich_web_video_slider
    • can_compress_scripts
    • theysaidso_admin_options
    • widget_theysaidso_widget
    • db_upgraded
    • widget_recent-posts
    • widget_recent-comments

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 | 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
  • 4× PHP files perform the task of outputting text when accessed with GET requests:
    • > /wp-content/plugins/slider-video/Scripts/RW_VS_Slider_Video-Slider.js.php
    • > /wp-content/plugins/slider-video/Style/RW_VS_Slider_Rich.css.php
    • > /wp-content/plugins/slider-video/Scripts/RW_VS_Slider_Rich.js.php
    • > /wp-content/plugins/slider-video/Scripts/RW_VS_Slider_Content.js.php
  • 47× GET requests to PHP files trigger server-side errors or Error 500 responses (only 10 are shown):
    • > PHP Notice
      Undefined variable: Rich_Web_VSlider_Eff in wp-content/plugins/slider-video/Style/RW_VS_Slider_Content.css.php on line 2
    • > PHP Fatal error
      Uncaught Error: Call to undefined function esc_html() in wp-content/plugins/slider-video/Scripts/RW_VS_Slider_Rich.js.php:202
    • > PHP Fatal error
      Uncaught Error: Call to undefined function esc_html() in wp-content/plugins/slider-video/PHP/RW_VS_Slider_Video-Carousel.php:1
    • > PHP Fatal error
      Uncaught Error: Call to undefined function esc_html() in wp-content/plugins/slider-video/Scripts/RW_VS_Slider_Thumbnails.js.php:2
    • > PHP Notice
      Trying to access array offset on value of type null in wp-content/plugins/slider-video/Style/RW_VS_Slider_Horizontal.css.php on line 2
    • > PHP Notice
      Trying to access array offset on value of type null in wp-content/plugins/slider-video/Style/RW_VS_Slider_Content.css.php on line 2
    • > PHP Fatal error
      Uncaught Error: Call to undefined function esc_html() in wp-content/plugins/slider-video/Style/RW_VS_Slider_Horizontal.css.php:9
    • > PHP Fatal error
      Uncaught Error: Call to undefined function esc_html() in wp-content/plugins/slider-video/PHP/RW_VS_Slider_TimeLine.php:1
    • > PHP Fatal error
      Uncaught Error: Call to undefined function esc_attr() in wp-content/plugins/slider-video/Style/RW_VS_Slider_Content.css.php:11
    • > PHP Fatal error
      Uncaught Error: Call to undefined function add_shortcode() in wp-content/plugins/slider-video/Rich-Web-Video-Slider-Shortcode.php:11

User-side errors Passed 1 test

🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
No browser issues were found

Optimizations

Plugin configuration 90% from 29 tests

readme.txt 88% from 16 tests

The readme.txt file describes your plugin functionality and requirements and it is parsed to prepare the your plugin's listing
Please fix the following attributes:
  • Screenshots: These screenshots do not have images: #20 (Thumbnails Slider), #21 (Carousel / Content Popup), #22 (Carousel / Content Popup), #23 (Carousel / Content Popup), #30 (Simple Video Slider), #31 (Simple Video Slider), #40 (Horizontal Posts), #41 (Horizontal Posts)
  • Screenshots: Add descriptions for screenshots #12, #13, #14, #15, #6, #7, #8, #9 in slider-video/assets to your readme.txt
You can look at the official readme.txt

slider-video/Slider-Video.php 92% from 13 tests

The main file in "Video Slider - Slider Carousel" v. 1.5.3 serves as a complement to information provided in readme.txt and as the entry point to the plugin
Please take the time to fix the following:
  • Main file name: It is recommended to name the main PHP file as the plugin slug ("slider-video.php" instead of "Slider-Video.php")

Code Analysis Passed 3 tests

File types Passed 1 test

🔸 Test weight: 35 | This is a short overview of programming languages used in this plugin, detecting executable files
No dangerous file extensions were detected30,404 lines of code in 100 files:
LanguageFilesBlank linesComment linesLines of code
PHP2978624726,160
CSS162251432,238
JavaScript5262551,127
SVG300879

PHP code Passed 2 tests

This is a very shot review of cyclomatic complexity and code structure
This plugin has no cyclomatic complexity issues
Cyclomatic complexity
Average complexity per logical line of code0.09
Average class complexity16.00
▷ Minimum class complexity16.00
▷ Maximum class complexity16.00
Average method complexity6.00
▷ Minimum method complexity1.00
▷ Maximum method complexity15.00
Code structure
Namespaces0
Interfaces0
Traits0
Classes1
▷ Abstract classes00.00%
▷ Concrete classes1100.00%
▷ Final classes00.00%
Methods3
▷ Static methods00.00%
▷ Public methods3100.00%
▷ Protected methods00.00%
▷ Private methods00.00%
Functions23
▷ Named functions23100.00%
▷ Anonymous functions00.00%
Constants0
▷ Global constants00.00%
▷ Class constants00.00%
▷ Public constants00.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
85 PNG files occupy 0.46MB with 0.26MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant
FileSize - originalSize - compressedSavings
Images/bg_direction_nav_white.png1.83KB0.80KB▼ 56.53%
Images/WordPress-Video-Slider-Content.png16.11KB15.56KB▼ 3.40%
Images/icons/icon-1.png4.14KB1.24KB▼ 69.97%
Images/icons/icon-7-7.png3.61KB0.63KB▼ 82.62%
Images/icons/icon-11.png5.87KB1.75KB▼ 70.11%