58% 5-stars-rating-funnel

Code Review | 5 Stars Rating Funnel WordPress Plugin | RRatingg

WordPress plugin 5 Stars Rating Funnel WordPress Plugin | RRatingg scored 58% from 54 tests.

About plugin

  • Plugin page: 5-stars-rating-fu...
  • Plugin version: 1.2.54
  • PHP compatiblity: 7.0+
  • PHP version: 7.4.16
  • WordPress compatibility: 5.0-5.9
  • WordPress version: 5.9.2
  • First release: Oct 6, 2021
  • Latest release: Apr 1, 2022
  • Number of updates: 45
  • Update frequency: every 3.9 days
  • Top authors: Tobias_Conrad (100%)

Code review

54 tests

User reviews

3 reviews

Install metrics

10+ active / 475 total downloads

Benchmarks

Plugin footprint 48% from 16 tests

Installer Passed 1 test

🔺 Critical test (weight: 50) | All plugins must install correctly, without throwing any errors, warnings, or notices
The plugin installed gracefully, with no errors

Server metrics [RAM: ▲4.93MB] [CPU: ▼254.48ms] Passed 4 tests

Server-side resources used by 5 Stars Rating Funnel WordPress Plugin | RRatingg
No issues were detected with server-side resource usage
PageMemory (MB)CPU Time (ms)
Home /8.69 ▲5.1792.15 ▲40.64
Dashboard /wp-admin8.70 ▲5.2967.12 ▲33.24
Posts /wp-admin/edit.php8.70 ▲5.0677.37 ▲39.15
Add New Post /wp-admin/post-new.php11.17 ▲4.19152.43 ▼1,128.40
Media Library /wp-admin/upload.php8.70 ▲5.4162.40 ▲38.11
Freemius Debug [v.2.5.0.1] /wp-admin/admin.php?page=freemius8.7050.63

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

Input-output and database impact of this plugin
No storage issues were detected
Filesystem: 286 new files
Database: 2 new tables, 12 new options
New tables
wp_rratingg_leads
wp_rratingg_feedbacks
New WordPress options
rrtngg_invitation_limit_counter
rrtngg_invitation_limit_reset
fs_gdpr
rrtngg_1_2_2_upgrade
fs_accounts
rrtngg_version
rrtngg_flush_rewrite_rules
fs_active_plugins
rrtngg_db_version
rrtngg_invitation_limit
...

Browser metrics Passed 4 tests

A check of browser resources used by 5 Stars Rating Funnel WordPress Plugin | RRatingg
There were no issues detected in relation to browser resource usage
PageNodesMemory (MB)Script (ms)Layout (ms)
Home /3,886 ▲14216.17 ▲0.016.25 ▲0.363.64 ▲1.38
Dashboard /wp-admin2,973 ▲896.44 ▼0.06135.65 ▼7.88178.03 ▲21.09
Posts /wp-admin/edit.php2,763 ▲753.56 ▼0.0073.36 ▲11.54164.72 ▲23.51
Add New Post /wp-admin/post-new.php1,708 ▲4717.28 ▲0.90442.64 ▲4.66164.95 ▲7.10
Media Library /wp-admin/upload.php1,770 ▲755.74 ▲0.03143.86 ▲3.72209.34 ▲16.96
Freemius Debug [v.2.5.0.1] /wp-admin/admin.php?page=freemius1,4712.8556.91116.64

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

🔸 Tests weight: 35 | It is important to correctly uninstall your plugin, without leaving any traces
These items require your attention
  • Uninstall procedure had uncaught errors
    • > Notice in wp-content/plugins/5-stars-rating-funnel/freemius/includes/class-freemius.php+8911
    Undefined property: stdClass::$plugins
  • Zombie tables were found after uninstall: 2 tables
    • wp_rratingg_feedbacks
    • wp_rratingg_leads
  • This plugin did not uninstall successfully, leaving 12 options in the database
    • rrtngg_1_2_13_upgrade
    • fs_accounts
    • rrtngg_invitation_limit
    • fs_active_plugins
    • fs_debug_mode
    • rrtngg_db_version
    • rrtngg_invitation_limit_counter
    • rrtngg_flush_rewrite_rules
    • rrtngg_invitation_limit_reset
    • rrtngg_1_2_2_upgrade
    • ...

Smoke tests 50% from 4 tests

Server-side errors Passed 1 test

🔹 Test weight: 20 | A shallow check that no server-side errors were triggered
Even though no errors were found, this is by no means an exhaustive test

SRP 0% from 2 tests

🔹 Tests weight: 20 | A shallow check of the single-responsibility principle; PHP files should perform no action - including output of placeholder text - and trigger no errors when accessed directly
Please take a closer look at the following
  • 2× PHP files perform the action of outputting non-empty strings when accessed directly:
    • > /wp-content/plugins/5-stars-rating-funnel/templates/admin/partials/settings-tab.php
    • > /wp-content/plugins/5-stars-rating-funnel/templates/funnel/partials/footer_content.php
  • 54× PHP files trigger errors when accessed directly with GET requests (only 10 are shown):
    • > PHP Fatal error
      Uncaught Error: Class 'WP_REST_Controller' not found in wp-content/plugins/5-stars-rating-funnel/includes/RRTNGG_Rest.php:4
    • > PHP Fatal error
      Uncaught Error: Class 'WP_Async_Request' not found in wp-content/plugins/5-stars-rating-funnel/includes/background/wp-background-processing/classes/wp-background-process.php:14
    • > PHP Fatal error
      Uncaught Error: Class 'RRTNGG_Funnel_Template' not found in wp-content/plugins/5-stars-rating-funnel/templates/funnel/content.php:13
    • > PHP Fatal error
      Uncaught Error: Call to undefined function language_attributes() in wp-content/plugins/5-stars-rating-funnel/templates/funnel/header.php:15
    • > PHP Fatal error
      Uncaught Error: Class 'RRTNGG_Field_Generator' not found in wp-content/plugins/5-stars-rating-funnel/templates/fields/frontend_div_one_col.php:16
    • > PHP Fatal error
      Uncaught Error: Class 'Abstract_RRTNGG_BG' not found in wp-content/plugins/5-stars-rating-funnel/includes/background/RRTNGG_BG_Import_Request.php:4
    • > PHP Warning
      Use of undefined constant RRTNGG_ABS_PATH - assumed 'RRTNGG_ABS_PATH' (this will throw an Error in a future version of PHP) in wp-content/plugins/5-stars-rating-funnel/templates/admin/metaboxes/funnel/rating_page.php on line 16
    • > PHP Notice
      Undefined variable: enabled_services in wp-content/plugins/5-stars-rating-funnel/templates/funnel/partials/services.php on line 93
    • > PHP Fatal error
      Uncaught Error: Class 'RRTNGG_Manager' not found in wp-content/plugins/5-stars-rating-funnel/templates/fields/settings_tr.php:14
    • > PHP Fatal error
      Uncaught Error: Call to undefined function esc_html_e() in wp-content/plugins/5-stars-rating-funnel/templates/funnel/partials/forbidden.php:17

User-side errors Passed 1 test

🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
Everything seems fine on the user side

Optimizations

Plugin configuration 93% from 29 tests

readme.txt 94% 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:
  • Tags: You are using too many tags: 11 tag instead of maximum 10
You can take inspiration from this readme.txt

5-stars-rating-funnel/5-stars-rating-funnel.php 92% from 13 tests

"5 Stars Rating Funnel WordPress Plugin | RRatingg" version 1.2.54's primary PHP file adds more information about the plugin and serves as the entry point for WordPress
The following require your attention:
  • Description: If Twitter did it, so should we! Keep the description under 140 characters (currently 144 characters long)

Code Analysis 97% from 3 tests

File types Passed 1 test

🔸 Test weight: 35 | This is an overview of programming languages used in this plugin; dangerous file extensions are not allowed
Everything looks great! No dangerous files found in this plugin48,879 lines of code in 222 files:
LanguageFilesBlank linesComment linesLines of code
PHP1888,99217,69238,736
CSS20602755,315
PO File29871,2232,815
JavaScript52281631,211
Markdown21280326
HTML191275
JSON200151
SVG119031
XML10019

PHP code 50% from 2 tests

This is a short overview of cyclomatic complexity and code structure for this plugin
Please fix the following
  • Please reduce cyclomatic complexity of classes to less than 1000 (currently 3,029)
Cyclomatic complexity
Average complexity per logical line of code0.58
Average class complexity70.80
▷ Minimum class complexity1.00
▷ Maximum class complexity3,029.00
Average method complexity4.50
▷ Minimum method complexity1.00
▷ Maximum method complexity89.00
Code structure
Namespaces0
Interfaces0
Traits0
Classes69
▷ Abstract classes57.25%
▷ Concrete classes6492.75%
▷ Final classes00.00%
Methods1,410
▷ Static methods32322.91%
▷ Public methods1,01371.84%
▷ Protected methods483.40%
▷ Private methods34924.75%
Functions113
▷ Named functions113100.00%
▷ Anonymous functions00.00%
Constants138
▷ Global constants10676.81%
▷ Class constants3223.19%
▷ Public constants32100.00%

Plugin size Passed 2 tests

Image compression Passed 2 tests

PNG files should be compressed to save space and minimize bandwidth usage
3 PNG files occupy 0.06MB with 0.04MB in potential savings
Potential savings
Compression of 3 random PNG files using pngquant
FileSize - originalSize - compressedSavings
freemius/assets/img/5-stars-rating-funnel.png24.00KB6.56KB▼ 72.69%
freemius/assets/img/theme-icon.png10.97KB5.78KB▼ 47.37%
freemius/assets/img/plugin-icon.png24.00KB6.56KB▼ 72.69%