58% 5-stars-rating-funnel

Code Review | 5 Stars Rating Funnel WordPress Plugin | RRatingg

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

About plugin

  • Plugin page: 5-stars-rating-fu...
  • Plugin version: 1.2.63
  • PHP compatiblity: 7.3+
  • PHP version: 7.4.16
  • WordPress compatibility: 5.0-6.2
  • WordPress version: 6.3.1
  • First release: Oct 6, 2021
  • Latest release: Jul 15, 2023
  • Number of updates: 63
  • Update frequency: every 10.3 days
  • Top authors: Tobias_Conrad (100%)

Code review

54 tests

User reviews

3 reviews

Install metrics

30+ active /2,191 total downloads

Benchmarks

Plugin footprint 48% from 16 tests

Installer Passed 1 test

🔺 Critical test (weight: 50) | Checking the installer triggered no errors
Installer ran successfully

Server metrics [RAM: ▲0.72MB] [CPU: ▲1.08ms] Passed 4 tests

This is a short check of server-side resources used by 5 Stars Rating Funnel WordPress Plugin | RRatingg
This plugin does not affect your website's performance
PageMemory (MB)CPU Time (ms)
Home /4.16 ▲0.7046.87 ▲7.28
Dashboard /wp-admin4.03 ▲0.7255.90 ▲4.84
Posts /wp-admin/edit.php4.08 ▲0.7254.81 ▲2.43
Add New Post /wp-admin/post-new.php6.64 ▲0.75120.97 ▼6.71
Media Library /wp-admin/upload.php3.95 ▲0.7242.78 ▲3.75
Freemius Debug [v.2.5.10] /wp-admin/admin.php?page=freemius4.1438.64

Server storage [IO: ▲4.11MB] [DB: ▲0.08MB] Passed 3 tests

Filesystem and database footprint
There were no storage issued detected upon installing this plugin
Filesystem: 293 new files
Database: 2 new tables, 17 new options
New tables
wp_rratingg_leads
wp_rratingg_feedbacks
New WordPress options
fs_debug_mode
rrtngg_1_2_2_upgrade
fs_active_plugins
can_compress_scripts
fs_accounts
db_upgraded
theysaidso_admin_options
rrtngg_1_2_13_upgrade
widget_theysaidso_widget
rrtngg_flush_rewrite_rules
...

Browser metrics Passed 4 tests

5 Stars Rating Funnel WordPress Plugin | RRatingg: an overview of browser usage
Minimal impact on browser resources
PageNodesMemory (MB)Script (ms)Layout (ms)
Home /2,865 ▲10414.38 ▼0.021.92 ▲0.1232.20 ▼14.13
Dashboard /wp-admin2,246 ▲725.54 ▼0.1395.29 ▼20.5547.65 ▼8.92
Posts /wp-admin/edit.php2,152 ▲492.11 ▲0.1136.31 ▼3.4838.74 ▲0.77
Add New Post /wp-admin/post-new.php1,559 ▲3123.21 ▲0.11676.86 ▲18.1351.55 ▼5.57
Media Library /wp-admin/upload.php1,448 ▲484.22 ▼0.0398.51 ▼11.0246.09 ▼3.36
Freemius Debug [v.2.5.10] /wp-admin/admin.php?page=freemius1,1001.6925.3434.60

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

🔸 Tests weight: 35 | Verifying that this plugin uninstalls completely without leaving any traces
These items require your attention
  • This plugin cannot be uninstalled
    • > Notice in wp-content/plugins/5-stars-rating-funnel/freemius/includes/class-freemius.php+8486
    Undefined property: stdClass::$plugins
  • The plugin did not uninstall successfully, leaving 2 tables in the database
    • wp_rratingg_leads
    • wp_rratingg_feedbacks
  • The uninstall procedure has failed, leaving 17 options in the database
    • rrtngg_version
    • fs_debug_mode
    • rrtngg_flush_rewrite_rules
    • widget_theysaidso_widget
    • can_compress_scripts
    • rrtngg_db_version
    • rrtngg_1_2_2_upgrade
    • rrtngg_1_2_13_upgrade
    • theysaidso_admin_options
    • fs_accounts
    • ...

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
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 applies for WordPress plugins as well - please make sure your PHP files perform no actions when accessed directly
The following issues need your attention
  • 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 'Abstract_RRTNGG_BG' not found in wp-content/plugins/5-stars-rating-funnel/includes/background/RRTNGG_BG_Import_Request.php:4
    • > PHP Fatal error
      require(): Failed opening required 'RRTNGG_ABS_PATHtemplates/admin/metaboxes/funnel/fields_generated.php' (include_path='.:/usr/share/php') in wp-content/plugins/5-stars-rating-funnel/templates/admin/metaboxes/funnel/negative_answer.php on line 16
    • > 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/footer_settings.php on line 16
    • > PHP Fatal error
      Uncaught Error: Class 'Abstract_RRTNGG_BG' not found in wp-content/plugins/5-stars-rating-funnel/includes/background/RRTNGG_BG_Email_Request.php:4
    • > PHP Fatal error
      require(): Failed opening required 'RRTNGG_ABS_PATHtemplates/admin/metaboxes/funnel/fields_generated.php' (include_path='.:/usr/share/php') in wp-content/plugins/5-stars-rating-funnel/templates/admin/metaboxes/funnel/positive_answer.php on line 16
    • > PHP Fatal error
      Uncaught Error: Class 'RRTNGG_Leads_Model' not found in wp-content/plugins/5-stars-rating-funnel/templates/funnel/index.php:10
    • > PHP Fatal error
      Uncaught Error: Call to undefined function esc_html_e() in wp-content/plugins/5-stars-rating-funnel/templates/funnel/partials/preview_notice.php:18
    • > PHP Warning
      Invalid argument supplied for foreach() in wp-content/plugins/5-stars-rating-funnel/templates/funnel/partials/services.php on line 20
    • > 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/negative_answer.php on line 16

User-side errors Passed 1 test

🔹 Test weight: 20 | A shallow check that no browser errors were triggered
No browser errors were detected

Optimizations

Plugin configuration 93% from 29 tests

readme.txt 94% from 16 tests

The readme.txt file uses markdown syntax to describe your plugin to the world
These attributes need your attention:
  • Tags: There are too many tags (11 tag instead of maximum 10)
Please take inspiration from this readme.txt

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

The entry point to "5 Stars Rating Funnel WordPress Plugin | RRatingg" version 1.2.63 is a PHP file that has certain tags in its header comment area
The following require your attention:
  • Description: Keep the plugin description shorter than 140 characters (currently 144 characters long)

Code Analysis 97% from 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 plugin47,693 lines of code in 229 files:
LanguageFilesBlank linesComment linesLines of code
PHP1959,24218,09139,512
CSS21602755,316
JavaScript52281631,211
PO File1329424852
Markdown21280326
HTML191275
JSON200151
SVG119031
XML10019

PHP code 50% from 2 tests

Analyzing cyclomatic complexity and code structure
Please tend to the following items
  • Please reduce cyclomatic complexity of classes to less than 1000 (currently 3,073)
Cyclomatic complexity
Average complexity per logical line of code0.58
Average class complexity70.62
▷ Minimum class complexity1.00
▷ Maximum class complexity3,073.00
Average method complexity4.43
▷ Minimum method complexity1.00
▷ Maximum method complexity94.00
Code structure
Namespaces0
Interfaces0
Traits0
Classes71
▷ Abstract classes57.04%
▷ Concrete classes6692.96%
▷ Final classes00.00%
Methods1,470
▷ Static methods34023.13%
▷ Public methods1,04370.95%
▷ Protected methods503.40%
▷ Private methods37725.65%
Functions118
▷ Named functions118100.00%
▷ Anonymous functions00.00%
Constants153
▷ Global constants10669.28%
▷ Class constants4730.72%
▷ Public constants47100.00%

Plugin size Passed 2 tests

Image compression Passed 2 tests

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