78% bee-classifieds

Code Review | Classifieds

WordPress plugin Classifieds scored78%from 54 tests.

About plugin

  • Plugin page: bee-classifieds
  • Plugin version: 1.1
  • PHP version: 7.4.16
  • WordPress compatibility: 4.0-4.6.1
  • WordPress version: 6.3.1
  • First release: Aug 6, 2016
  • Latest release: Oct 8, 2016
  • Number of updates: 77
  • Update frequency: every 2.1 days
  • Top authors: aumsrini (100%)

Code review

54 tests

User reviews

1 review

Install metrics

10+ active /3,619 total downloads

Benchmarks

Plugin footprint 83% from 16 tests

Installer Passed 1 test

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

Server metrics [RAM: ▲0.58MB] [CPU: ▼4.75ms] Passed 4 tests

Server-side resources used by Classifieds
Normal server usage
PageMemory (MB)CPU Time (ms)
Home /3.97 ▲0.5143.19 ▲2.29
Dashboard /wp-admin3.93 ▲0.5954.51 ▼12.06
Posts /wp-admin/edit.php3.95 ▲0.6054.37 ▲1.74
Add New Post /wp-admin/post-new.php6.52 ▲0.6489.54 ▼10.96
Media Library /wp-admin/upload.php3.86 ▲0.6341.40 ▲4.89
Add Listing /wp-admin/post-new.php?post_type=beeclassifieds4.3360.78
Categories /wp-admin/edit-tags.php?taxonomy=listingcat&post_type=beeclassifieds3.8441.73
All Listings /wp-admin/edit.php?post_type=beeclassifieds3.9042.03

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

Input-output and database impact of this plugin
This plugin installed successfully
Filesystem: 423 new files
Database: no new tables, 6 new options
New WordPress options
theysaidso_admin_options
widget_recent-posts
can_compress_scripts
widget_recent-comments
widget_theysaidso_widget
db_upgraded

Browser metrics Passed 4 tests

A check of browser resources used by Classifieds
Normal browser usage
PageNodesMemory (MB)Script (ms)Layout (ms)
Home /2,976 ▲21514.01 ▼0.2114.31 ▲12.4947.58 ▲7.38
Dashboard /wp-admin2,252 ▲725.73 ▲0.0589.79 ▲2.4939.29 ▼2.49
Posts /wp-admin/edit.php2,160 ▲602.05 ▲0.0340.49 ▲2.7837.01 ▼1.11
Add New Post /wp-admin/post-new.php1,574 ▲4317.72 ▼5.55658.39 ▼3.2361.01 ▼4.29
Media Library /wp-admin/upload.php1,457 ▲574.28 ▲0.08101.72 ▼8.8146.85 ▲1.76
Add Listing /wp-admin/post-new.php?post_type=beeclassifieds1,9403.8171.0934.48
Categories /wp-admin/edit-tags.php?taxonomy=listingcat&post_type=beeclassifieds1,3372.3328.5232.10
All Listings /wp-admin/edit.php?post_type=beeclassifieds1,1701.9735.6328.94

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

🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
You still need to fix the following
  • This plugin did not uninstall successfully, leaving 6 options in the database
    • theysaidso_admin_options
    • db_upgraded
    • can_compress_scripts
    • widget_theysaidso_widget
    • widget_recent-comments
    • widget_recent-posts

Smoke tests 50% from 4 tests

Server-side errors Passed 1 test

🔹 Test weight: 20 | This is a shallow check for server-side errors
Good news, no errors were detected

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
Almost there! Just fix the following items
  • 2× PHP files output text when accessed directly:
    • > /wp-content/plugins/bee-classifieds/admin/partials/bee-classi-admin-display.php
    • > /wp-content/plugins/bee-classifieds/public/partials/bee-classi-public-display.php
  • 7× PHP files trigger errors when accessed directly with GET requests:
    • > PHP Fatal error
      Uncaught Error: Call to undefined function Cmb2Grid\\trailingslashit() in wp-content/plugins/bee-classifieds/includes/framework/grid/Cmb2GridPluginLoad.php:6
    • > PHP Fatal error
      Uncaught Error: Call to undefined function Cmb2Grid\\trailingslashit() in wp-content/plugins/bee-classifieds/includes/framework/grid/Cmb2GridPluginLoad.php:6
    • > PHP Fatal error
      Uncaught Error: Class 'Cmb2Grid\\Grid\\Column' not found in wp-content/plugins/bee-classifieds/includes/framework/grid/Grid/Group/GroupColumn.php:20
    • > PHP Fatal error
      Uncaught Error: Class 'Cmb2Grid\\Grid\\Row' not found in wp-content/plugins/bee-classifieds/includes/framework/grid/Grid/Group/GroupRow.php:18
    • > PHP Fatal error
      Uncaught Error: Call to undefined function __() in wp-content/plugins/bee-classifieds/includes/framework/bee-classi-options.php:45
    • > PHP Fatal error
      Uncaught Error: Class 'Cmb2Grid\\Grid\\Cmb2Grid' not found in wp-content/plugins/bee-classifieds/includes/framework/grid/Grid/Group/Cmb2GroupGrid.php:18
    • > PHP Fatal error
      Uncaught Error: Call to undefined function add_action() in wp-content/plugins/bee-classifieds/includes/framework/bee_config.php:72

User-side errors Passed 1 test

🔹 Test weight: 20 | Just a short smoke test targeting errors on the browser (console and network errors and warnings)
There were no browser issues found

Optimizations

Plugin configuration 90% from 29 tests

readme.txt 94% from 16 tests

Perhaps the most important file in your plugin readme.txt gets parsed in order to generate the public listing of your plugin
Please fix the following attributes:
  • Tags: Please delete some tags, you are using 18 tag instead of maximum 10
You can look at the official readme.txt

bee-classifieds/bee-classi.php 85% from 13 tests

The primary PHP file in "Classifieds" version 1.1 is used by WordPress to initiate all plugin functionality
Please make the necessary changes and fix the following:
  • Text Domain: The text domain must be the same as the plugin slug, although optional since WordPress version 4.6
  • Main file name: The principal plugin file should be the same as the plugin slug ("bee-classifieds.php" instead of "bee-classi.php")

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
Everything looks great! No dangerous files found in this plugin63,549 lines of code in 245 files:
LanguageFilesBlank linesComment linesLines of code
PO File11912,73116,33529,151
CSS172,4882,24219,452
PHP471,6383,3455,248
Sass25208573,587
JavaScript164588413,085
LESS1434441,646
SVG200973
Markdown21270359
YAML193328
XML14217
JSON1003

PHP code Passed 2 tests

An overview of cyclomatic complexity and code structure
This plugin has no cyclomatic complexity issues
Cyclomatic complexity
Average complexity per logical line of code0.44
Average class complexity22.00
▷ Minimum class complexity1.00
▷ Maximum class complexity130.00
Average method complexity3.02
▷ Minimum method complexity1.00
▷ Maximum method complexity17.00
Code structure
Namespaces6
Interfaces0
Traits0
Classes32
▷ Abstract classes13.12%
▷ Concrete classes3196.88%
▷ Final classes00.00%
Methods334
▷ Static methods288.38%
▷ Public methods30290.42%
▷ Protected methods205.99%
▷ Private methods123.59%
Functions60
▷ Named functions60100.00%
▷ Anonymous functions00.00%
Constants8
▷ Global constants562.50%
▷ Class constants337.50%
▷ Public constants3100.00%

Plugin size Passed 2 tests

Image compression Passed 2 tests

Often times overlooked, PNG files can occupy unnecessary space in your plugin
19 PNG files occupy 0.11MB with 0.03MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant
FileSize - originalSize - compressedSavings
includes/framework/images/ui-bg_glass_95_fef1ec_1x400.png0.12KB0.14KB0.00%
public/images/buy-now-credit-card-icons-button.png24.96KB10.63KB▼ 57.42%
includes/framework/images/ui-icons_888888_256x240.png5.23KB4.11KB▼ 21.49%
includes/framework/images/ui-bg_glass_55_fbf9ee_1x400.png0.12KB0.14KB0.00%
public/images/no_image.png18.11KB8.28KB▼ 54.28%