72% wp-logo-showcase

Code Review | Logo Slider and Showcase

WordPress plugin Logo Slider and Showcase scored72%from 54 tests.

About plugin

  • Plugin page: wp-logo-showcase
  • Plugin version: 1.4.3
  • PHP version: 7.4.16
  • WordPress version: 6.3.1
  • First release: Dec 21, 2016
  • Latest release: Apr 19, 2023
  • Number of updates: 36
  • Update frequency: every 64.1 days
  • Top authors: techlabpro1 (100%)

Code review

54 tests

User reviews

16 reviews

Install metrics

10,000+ active /72,574 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 successfully, without throwing any errors or notices

Server metrics [RAM: ▲0.14MB] [CPU: ▼3.22ms] Passed 4 tests

This is a short check of server-side resources used by Logo Slider and Showcase
Server-side resource usage in normal parameters
PageMemory (MB)CPU Time (ms)
Home /3.64 ▲0.1737.75 ▼4.13
Dashboard /wp-admin3.48 ▲0.1850.96 ▼1.08
Posts /wp-admin/edit.php3.53 ▲0.1750.82 ▲2.15
Add New Post /wp-admin/post-new.php6.01 ▲0.1297.86 ▼3.86
Media Library /wp-admin/upload.php3.34 ▲0.1134.08 ▼3.81
Add New Logo /wp-admin/post-new.php?post_type=wlshowcase3.5450.56
Settings /wp-admin/edit.php?post_type=wlshowcase&page=wls_settings3.3433.66
All Logos /wp-admin/edit.php?post_type=wlshowcase3.4440.42
Categories /wp-admin/edit-tags.php?taxonomy=wlshowcase_category&post_type=wlshowcase3.4836.36
Shortcode Generator /wp-admin/edit.php?post_type=wlshowcasesc3.4435.82

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

Filesystem and database footprint
This plugin was installed successfully
Filesystem: 49 new files
Database: no new tables, 8 new options
New WordPress options
widget_theysaidso_widget
widget_recent-comments
db_upgraded
can_compress_scripts
widget_recent-posts
theysaidso_admin_options
rt_wls_current_version
widget_widget_rt_wls

Browser metrics Passed 4 tests

Logo Slider and Showcase: an overview of browser usage
Minimal impact on browser resources
PageNodesMemory (MB)Script (ms)Layout (ms)
Home /2,840 ▲7914.25 ▼0.131.64 ▼0.0939.72 ▼7.52
Dashboard /wp-admin2,226 ▲465.51 ▼0.1192.76 ▲0.3684.47 ▲39.61
Posts /wp-admin/edit.php2,146 ▲461.95 ▼0.0438.89 ▼0.7834.32 ▼2.51
Add New Post /wp-admin/post-new.php6,231 ▲4,70018.86 ▼4.16960.24 ▲319.8658.24 ▲0.92
Media Library /wp-admin/upload.php1,440 ▲404.26 ▲0.07100.24 ▼3.1976.05 ▲35.15
Add New Logo /wp-admin/post-new.php?post_type=wlshowcase1,9694.5475.4383.29
Settings /wp-admin/edit.php?post_type=wlshowcase&page=wls_settings1,0262.3841.3443.32
All Logos /wp-admin/edit.php?post_type=wlshowcase1,1812.7742.6533.77
Categories /wp-admin/edit-tags.php?taxonomy=wlshowcase_category&post_type=wlshowcase1,3142.1227.5930.38
Shortcode Generator /wp-admin/edit.php?post_type=wlshowcasesc1,1492.5036.4931.38

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

🔸 Tests weight: 35 | All plugins must uninstall correctly, removing their source code and extra database tables they might have created
The following items require your attention
  • Zombie WordPress options were found after uninstall: 8 options
    • widget_widget_rt_wls
    • theysaidso_admin_options
    • db_upgraded
    • widget_recent-comments
    • can_compress_scripts
    • widget_recent-posts
    • widget_theysaidso_widget
    • rt_wls_current_version

Smoke tests 25% 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 | It is important to ensure that your PHP files perform no action when accessed directly, respecting the single-responsibility principle
Please fix the following
  • 14× GET requests to PHP files return non-empty strings (only 10 are shown):
    • > /wp-content/plugins/wp-logo-showcase/lib/vendor/rtWLSSElementorWidget.php
    • > /wp-content/plugins/wp-logo-showcase/lib/controllers/rtWLSShortCode.php
    • > /wp-content/plugins/wp-logo-showcase/lib/controllers/rtWLSSCButton.php
    • > /wp-content/plugins/wp-logo-showcase/lib/controllers/rtWLSInit.php
    • > /wp-content/plugins/wp-logo-showcase/lib/controllers/rtWLSSElementor.php
    • > /wp-content/plugins/wp-logo-showcase/lib/init.php
    • > /wp-content/plugins/wp-logo-showcase/lib/models/rtWLSField.php
    • > /wp-content/plugins/wp-logo-showcase/lib/controllers/rtWLSOptions.php
    • > /wp-content/plugins/wp-logo-showcase/lib/controllers/rtWLSAjaxResponse.php
    • > /wp-content/plugins/wp-logo-showcase/lib/controllers/rtWLSSGutenBurg.php
  • 11× PHP files trigger errors when accessed directly with GET requests (only 10 are shown):
    • > PHP Fatal error
      Uncaught Error: Call to undefined function esc_html_e() in wp-content/plugins/wp-logo-showcase/lib/views/settings.php:14
    • > PHP Fatal error
      Uncaught Error: Call to undefined function apply_filters() in wp-content/plugins/wp-logo-showcase/lib/views/layouts/carousel-layout.php:24
    • > PHP Notice
      Undefined variable: title in wp-content/plugins/wp-logo-showcase/lib/views/layouts/grid-layout.php on line 13
    • > PHP Notice
      Undefined variable: linkType in wp-content/plugins/wp-logo-showcase/lib/views/layouts/carousel-layout.php on line 13
    • > PHP Notice
      Undefined variable: url in wp-content/plugins/wp-logo-showcase/lib/views/layouts/carousel-layout.php on line 13
    • > PHP Notice
      Undefined variable: img_src in wp-content/plugins/wp-logo-showcase/lib/views/layouts/carousel-layout.php on line 14
    • > PHP Notice
      Undefined variable: url in wp-content/plugins/wp-logo-showcase/lib/views/layouts/grid-layout.php on line 11
    • > PHP Notice
      Undefined variable: img_src in wp-content/plugins/wp-logo-showcase/lib/views/layouts/grid-layout.php on line 12
    • > PHP Notice
      Undefined variable: linkType in wp-content/plugins/wp-logo-showcase/lib/views/layouts/grid-layout.php on line 11
    • > PHP Notice
      Undefined variable: title in wp-content/plugins/wp-logo-showcase/lib/views/layouts/carousel-layout.php on line 15

User-side errors 0% from 1 test

🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
Please fix the following user-side errors
    • > GET request to /wp-admin/post-new.php?post_type=wlshowcase
    • > Javascript (severe) in unknown
    /wp-content/plugins/wp-logo-showcase/assets/js/wls-admin.js?ver=1697434150 142:18 Uncaught TypeError: Cannot read properties of undefined (reading 'msie')
    • > GET request to /wp-admin/edit.php?post_type=wlshowcase&page=wls_settings
    • > Javascript (severe) in unknown
    /wp-content/plugins/wp-logo-showcase/assets/js/wls-admin.js?ver=1697434152 142:18 Uncaught TypeError: Cannot read properties of undefined (reading 'msie')
    • > GET request to /wp-admin/edit.php?post_type=wlshowcase
    • > Javascript (severe) in unknown
    /wp-content/plugins/wp-logo-showcase/assets/js/wls-admin.js?ver=1697434154 142:18 Uncaught TypeError: Cannot read properties of undefined (reading 'msie')
    • > GET request to /wp-admin/edit.php?post_type=wlshowcasesc
    • > Javascript (severe) in unknown
    /wp-content/plugins/wp-logo-showcase/assets/js/wls-admin.js?ver=1697434157 142:18 Uncaught TypeError: Cannot read properties of undefined (reading 'msie')

Optimizations

Plugin configuration 93% 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
These attributes need your attention:
  • Donate link: Invalid URI ("")
  • Requires at least: Invalid plugin version format
You can look at the official readme.txt

wp-logo-showcase/wp-logo-showcase.php Passed 13 tests

The entry point to "Logo Slider and Showcase" version 1.4.3 is a PHP file that has certain tags in its header comment area
126 characters long description:
Logo Slider and Showcase plugin is fully Responsive and Mobile Friendly to display your partner logo in slider and grid views.

Code Analysis Passed 3 tests

File types Passed 1 test

🔸 Test weight: 35 | A short glimpse at programming languages used with this plugin and a check that no dangerous files are present
No dangerous file extensions were detected9,328 lines of code in 36 files:
LanguageFilesBlank linesComment linesLines of code
JavaScript121,6112,4495,902
PHP194796182,353
CSS3100361,052
SVG11013
XML1008

PHP code Passed 2 tests

An overview of cyclomatic complexity and code structure
This plugin has no cyclomatic complexity problems
Cyclomatic complexity
Average complexity per logical line of code0.44
Average class complexity22.19
▷ Minimum class complexity1.00
▷ Maximum class complexity78.00
Average method complexity3.90
▷ Minimum method complexity1.00
▷ Maximum method complexity61.00
Code structure
Namespaces0
Interfaces0
Traits0
Classes16
▷ Abstract classes00.00%
▷ Concrete classes16100.00%
▷ Final classes00.00%
Methods117
▷ Static methods21.71%
▷ Public methods10287.18%
▷ Protected methods21.71%
▷ Private methods1311.11%
Functions0
▷ Named functions00.00%
▷ Anonymous functions00.00%
Constants6
▷ Global constants6100.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
4 PNG files occupy 0.00MB with 0.00MB in potential savings
Potential savings
Compression of 4 random PNG files using pngquant
FileSize - originalSize - compressedSavings
assets/images/grabbing.png0.11KB0.14KB0.00%
assets/images/icon-scg.png1.50KB0.73KB▼ 51.40%
assets/images/menu-icon.png1.38KB0.55KB▼ 60.58%
assets/images/icon-vc.png1.86KB1.18KB▼ 36.45%