68% revampcrm-woocommerce

Code Review | Revamp CRM for WooCommerce

WordPress plugin Revamp CRM for WooCommerce scored68%from 54 tests.

About plugin

  • Plugin page: revampcrm-woocomm...
  • Plugin version: 1.0.9
  • PHP version: 7.4.16
  • WordPress compatibility: 4.4-5.8
  • WordPress version: 6.3.1
  • First release: Jan 17, 2018
  • Latest release: Aug 3, 2021
  • Number of updates: 28
  • Update frequency: every 46.3 days
  • Top authors: revampcrm (100%)

Code review

54 tests

User reviews

1 review

Install metrics

10+ active /1,278 total downloads

Benchmarks

Plugin footprint 65% from 16 tests

Installer Passed 1 test

🔺 Critical test (weight: 50) | The install procedure must perform silently
Installer ran successfully

Server metrics [RAM: ▲4.44MB] [CPU: ▲14.81ms] Passed 4 tests

A check of server-side resources used by Revamp CRM for WooCommerce
This plugin does not affect your website's performance
PageMemory (MB)CPU Time (ms)
Home /7.89 ▲4.4363.25 ▲27.10
Dashboard /wp-admin7.73 ▲4.4362.73 ▲12.75
Posts /wp-admin/edit.php7.85 ▲4.4961.27 ▲14.31
Add New Post /wp-admin/post-new.php10.33 ▲4.45111.17 ▲13.22
Media Library /wp-admin/upload.php7.66 ▲4.4355.30 ▲18.97
Revamp CRM /wp-admin/options-general.php?page=revampcrm-woocommerce7.6450.80

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

Input-output and database impact of this plugin
There were no storage issued detected upon installing this plugin
Filesystem: 129 new files
Database: 3 new tables, 8 new options
New tables
wp_revampcrm_carts
wp_failed_jobs
wp_queue
New WordPress options
theysaidso_admin_options
can_compress_scripts
revampcrm-woocommerce
revampcrm-woocommerce-store_id
widget_recent-posts
widget_theysaidso_widget
widget_recent-comments
db_upgraded

Browser metrics Passed 4 tests

Revamp CRM for WooCommerce: an overview of browser usage
There were no issues detected in relation to browser resource usage
PageNodesMemory (MB)Script (ms)Layout (ms)
Home /2,891 ▲14513.54 ▼0.878.31 ▲6.6443.71 ▲4.66
Dashboard /wp-admin2,217 ▲294.87 ▼1.04112.47 ▲5.2542.93 ▲1.21
Posts /wp-admin/edit.php2,097 ▲82.02 ▲0.0038.42 ▲3.9232.84 ▼4.70
Add New Post /wp-admin/post-new.php1,544 ▲2518.04 ▼5.29628.96 ▼95.8457.66 ▼8.13
Media Library /wp-admin/upload.php1,399 ▲114.18 ▼0.0095.10 ▼19.9443.45 ▼7.84
Revamp CRM /wp-admin/options-general.php?page=revampcrm-woocommerce8602.0524.3928.28

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
You still need to fix the following
  • The plugin did not uninstall successfully, leaving 3 tables in the database
    • wp_revampcrm_carts
    • wp_queue
    • wp_failed_jobs
  • Zombie WordPress options detected upon uninstall: 7 options
    • widget_recent-posts
    • can_compress_scripts
    • widget_theysaidso_widget
    • widget_recent-comments
    • theysaidso_admin_options
    • db_upgraded
    • revampcrm-woocommerce-store_id

Smoke tests 50% from 4 tests

Server-side errors Passed 1 test

🔹 Test weight: 20 | This is a shallow check 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 | 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 output text when accessed directly:
    • > /wp-content/plugins/revampcrm-woocommerce/public/partials/revampcrm-woocommerce-public-display.php
    • > /wp-content/plugins/revampcrm-woocommerce/admin/partials/tabs/notices.php
  • 18× PHP files trigger server-side errors or warnings when accessed directly (only 10 are shown):
    • > PHP Fatal error
      Uncaught Error: Class 'WP_Job' not found in wp-content/plugins/revampcrm-woocommerce/includes/processes/class-revampcrm-woocommerce-abstract-sync.php:18
    • > PHP Fatal error
      Uncaught Error: Call to undefined function plugin_dir_path() in wp-content/plugins/revampcrm-woocommerce/includes/vendor/queue.php:11
    • > PHP Fatal error
      Uncaught Error: Class 'RevampCRM_Woocommerce_Options' not found in wp-content/plugins/revampcrm-woocommerce/admin/class-revampcrm-woocommerce-admin.php:23
    • > PHP Fatal error
      Uncaught Error: Call to undefined function _e() in wp-content/plugins/revampcrm-woocommerce/admin/partials/tabs/success/re-sync-started.php:2
    • > PHP Fatal error
      Uncaught Error: Class 'RevampCRM_WooCommerce_Abtstract_Sync' not found in wp-content/plugins/revampcrm-woocommerce/includes/processes/class-revampcrm-woocommerce-process-products.php:18
    • > PHP Fatal error
      Uncaught Error: Class 'RevampCRM_Woocommerce_Options' not found in wp-content/plugins/revampcrm-woocommerce/includes/class-revampcrm-woocommerce-service.php:18
    • > PHP Fatal error
      Uncaught Error: Class 'WP_Worker' not found in wp-content/plugins/revampcrm-woocommerce/includes/vendor/queue/classes/worker/wp-http-worker.php:4
    • > PHP Fatal error
      Uncaught Error: Class 'WP_CLI_Command' not found in wp-content/plugins/revampcrm-woocommerce/includes/vendor/queue/classes/cli/queue-command.php:8
    • > PHP Fatal error
      Uncaught Error: Call to undefined function _e() in wp-content/plugins/revampcrm-woocommerce/admin/partials/tabs/errors/not_ready_for_sync.php:2
    • > PHP Fatal error
      Uncaught Error: Call to undefined function revampcrm_get_store_id() in wp-content/plugins/revampcrm-woocommerce/admin/partials/tabs/store_sync.php:3

User-side errors Passed 1 test

🔹 Test weight: 20 | This is a smoke test targeting browser errors/issues
No browser issues were found

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
Please fix the following attributes: The official readme.txt might help

revampcrm-woocommerce/revampcrm-woocommerce.php 92% from 13 tests

The primary PHP file in "Revamp CRM for WooCommerce" version 1.0.9 is used by WordPress to initiate all plugin functionality
You should first fix the following items:
  • Requires at least: Required version must match the one declared in readme.txt ("4.3" instead of "4.4")

Code Analysis Passed 3 tests

File types Passed 1 test

🔸 Test weight: 35 | Executable files are not allowed as they can serve as attack vectors
Success! There were no dangerous files found in this plugin23,097 lines of code in 123 files:
LanguageFilesBlank linesComment linesLines of code
PHP1195,64619,14323,091
JavaScript24546
CSS2080

PHP code Passed 2 tests

A brief analysis of cyclomatic complexity and code structure for this plugin
No complexity issues detected
Cyclomatic complexity
Average complexity per logical line of code0.30
Average class complexity21.90
▷ Minimum class complexity1.00
▷ Maximum class complexity196.00
Average method complexity1.83
▷ Minimum method complexity1.00
▷ Maximum method complexity65.00
Code structure
Namespaces3
Interfaces0
Traits0
Classes103
▷ Abstract classes32.91%
▷ Concrete classes10097.09%
▷ Final classes00.00%
Methods2,589
▷ Static methods25910.00%
▷ Public methods2,51397.06%
▷ Protected methods652.51%
▷ Private methods110.42%
Functions21
▷ Named functions21100.00%
▷ Anonymous functions00.00%
Constants8
▷ Global constants225.00%
▷ Class constants675.00%
▷ Public constants6100.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
No PNG images were found in this plugin