67% wp-logger-tenbulls

Code Review | WP Logger - Tenbulls

WordPress plugin WP Logger - Tenbulls scored67%from 54 tests.

About plugin

  • Plugin page: wp-logger-tenbulls
  • Plugin version: 1.0.0
  • PHP version: 7.4.16
  • WordPress compatibility: 4.0-5.5.3
  • WordPress version: 6.3.1
  • First release: Apr 6, 2019
  • Latest release: Nov 30, 2020
  • Number of updates: 10
  • Update frequency: every 60.4 days
  • Top authors: mrkhanakia (100%)

Code review

54 tests

User reviews

1 review

Install metrics

10+ active /693 total downloads

Benchmarks

Plugin footprint 65% from 16 tests

Installer Passed 1 test

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

Server metrics [RAM: ▲0.08MB] [CPU: ▼34.27ms] Passed 4 tests

An overview of server-side resources used by WP Logger - Tenbulls
No issues were detected with server-side resource usage
PageMemory (MB)CPU Time (ms)
Home /4.04 ▲0.5823.42 ▼25.38
Dashboard /wp-admin4.09 ▲0.7923.72 ▼25.65
Posts /wp-admin/edit.php4.09 ▲0.7423.85 ▼20.50
Add New Post /wp-admin/post-new.php4.09 ▼1.7921.51 ▼65.55
Media Library /wp-admin/upload.php4.09 ▲0.8622.72 ▼9.89
Options /wp-admin/admin.php?page=WPLoggerOptions&tab=14.0922.20
Redux Framework /wp-admin/tools.php?page=redux-about4.0925.56

Server storage [IO: ▲5.59MB] [DB: ▲0.07MB] Passed 3 tests

A short overview of filesystem and database impact
There were no storage issued detected upon installing this plugin
Filesystem: 827 new files
Database: no new tables, 9 new options
New WordPress options
db_upgraded
can_compress_scripts
widget_theysaidso_widget
wp_logger-transients
widget_recent-posts
widget_recent-comments
theysaidso_admin_options
wp_logger
redux_version_upgraded_from

Browser metrics Passed 4 tests

WP Logger - Tenbulls: an overview of browser usage
Normal browser usage
PageNodesMemory (MB)Script (ms)Layout (ms)
Home /2,913 ▲15613.20 ▼1.181.82 ▼0.1744.10 ▼3.96
Dashboard /wp-admin2,311 ▲1234.86 ▼1.04104.54 ▼2.4339.24 ▼3.83
Posts /wp-admin/edit.php2,132 ▲432.01 ▼0.0132.89 ▼5.3433.41 ▼0.55
Add New Post /wp-admin/post-new.php1,545 ▲1117.61 ▼5.66649.62 ▼9.6649.07 ▼6.13
Media Library /wp-admin/upload.php1,425 ▲374.15 ▼0.0493.50 ▼0.8643.50 ▲1.33
Options /wp-admin/admin.php?page=WPLoggerOptions&tab=11,2352.9967.4544.29
Redux Framework /wp-admin/tools.php?page=redux-about1,0683.6970.7462.89

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

🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
The following items require your attention
  • Uninstall procedure had uncaught errors
    • > Warning in wp-content/plugins/wp-logger-tenbulls/vendor/redux-framework/ReduxCore/inc/class.redux_filesystem.php+29
    Creating default object from empty value
  • Zombie WordPress options were found after uninstall: 9 options
    • redux_version_upgraded_from
    • widget_recent-posts
    • wp_logger-transients
    • widget_recent-comments
    • theysaidso_admin_options
    • widget_theysaidso_widget
    • can_compress_scripts
    • wp_logger
    • db_upgraded

Smoke tests 50% from 4 tests

Server-side errors 0% from 1 test

🔹 Test weight: 20 | This is a shallow check for server-side errors
Almost there, just fix the following server-side errors
  • 3 occurences, only the last one shown
    • > GET request to /wp-admin/tools.php?page=redux-about
    • > Warning in wp-content/plugins/wp-logger-tenbulls/vendor/redux-framework/ReduxCore/inc/class.redux_filesystem.php+29
    Creating default object from empty value

SRP 50% 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
  • 300× PHP files trigger server errors when accessed directly (only 10 are shown):
    • > PHP Fatal error
      Uncaught Error: Class 'Composer\\Installers\\Test\\TestCase' not found in wp-content/plugins/wp-logger-tenbulls/vendor/composer/installers/tests/Composer/Installers/Test/YawikInstallerTest.php:14
    • > PHP Fatal error
      Uncaught Error: Class 'Monolog\\Handler\\AbstractProcessingHandler' not found in wp-content/plugins/wp-logger-tenbulls/vendor/monolog/monolog/src/Monolog/Handler/RavenHandler.php:25
    • > PHP Fatal error
      Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/wp-logger-tenbulls/vendor/composer/installers/src/Composer/Installers/ElggInstaller.php:4
    • > PHP Fatal error
      Uncaught Error: Interface 'Psr\\Log\\LoggerInterface' not found in wp-content/plugins/wp-logger-tenbulls/vendor/monolog/monolog/src/Monolog/Logger.php:28
    • > PHP Fatal error
      Uncaught Error: Interface 'themecheck' not found in wp-content/plugins/wp-logger-tenbulls/vendor/redux-framework/ReduxCore/inc/themecheck/checks/embedded.php:3
    • > PHP Fatal error
      Uncaught Error: Class 'Monolog\\Handler\\SocketHandler' not found in wp-content/plugins/wp-logger-tenbulls/vendor/monolog/monolog/src/Monolog/Handler/HipChatHandler.php:29
    • > PHP Fatal error
      Uncaught Error: Class 'Gelf\\MessagePublisher' not found in wp-content/plugins/wp-logger-tenbulls/vendor/monolog/monolog/tests/Monolog/Handler/GelfMockMessagePublisher.php:17
    • > PHP Fatal error
      Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/wp-logger-tenbulls/vendor/composer/installers/src/Composer/Installers/YawikInstaller.php:12
    • > PHP Fatal error
      Uncaught Error: Class 'Monolog\\Handler\\AbstractHandler' not found in wp-content/plugins/wp-logger-tenbulls/vendor/monolog/monolog/src/Monolog/Handler/FilterHandler.php:24
    • > PHP Fatal error
      Uncaught Error: Class 'Monolog\\TestCase' not found in wp-content/plugins/wp-logger-tenbulls/vendor/monolog/monolog/tests/Monolog/Handler/NewRelicHandlerTest.php:18

User-side errors Passed 1 test

🔹 Test weight: 20 | A shallow check that no browser errors were triggered
No browser issues were 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
These attributes need your attention:
  • Contributors: Contributors not specified
The official readme.txt is a good inspiration

wp-logger-tenbulls/wp-logger.php 85% from 13 tests

The entry point to "WP Logger - Tenbulls" version 1.0.0 is a PHP file that has certain tags in its header comment area
Please make the necessary changes and fix the following:
  • Main file name: Please rename the main PHP file in this plugin to the plugin slug ("wp-logger-tenbulls.php" instead of "wp-logger.php")
  • Text Domain: Since WordPress version 4.6 the text domain is optional; if specified, it must be the same as the plugin slug

Code Analysis 97% from 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
Good job! No executable or dangerous file extensions detected64,668 lines of code in 678 files:
LanguageFilesBlank linesComment linesLines of code
PHP4458,17314,30837,822
JavaScript862,6252,14412,229
Sass541,180607,560
Markdown1897203,010
JSON918401,610
SVG100934
CSS4634437929
XML680172
YAML51620124
Bourne Shell43150122
LESS22081
HTML17060
make16015

PHP code 50% from 2 tests

This plugin's cyclomatic complexity and code structure detailed below
It is recommended to fix the following
  • Cyclomatic complexity of methods should be reduced to less than 100 (currently 113)
Cyclomatic complexity
Average complexity per logical line of code0.39
Average class complexity11.64
▷ Minimum class complexity1.00
▷ Maximum class complexity879.00
Average method complexity3.31
▷ Minimum method complexity1.00
▷ Maximum method complexity113.00
Code structure
Namespaces14
Interfaces7
Traits2
Classes431
▷ Abstract classes102.32%
▷ Concrete classes42197.68%
▷ Final classes30.71%
Methods2,097
▷ Static methods1949.25%
▷ Public methods1,61877.16%
▷ Protected methods32515.50%
▷ Private methods1547.34%
Functions116
▷ Named functions3530.17%
▷ Anonymous functions8169.83%
Constants142
▷ Global constants42.82%
▷ Class constants13897.18%
▷ Public constants138100.00%

Plugin size Passed 2 tests

Image compression Passed 2 tests

PNG files should be compressed to save space and minimize bandwidth usage
36 PNG files occupy 0.19MB with 0.04MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant
FileSize - originalSize - compressedSavings
vendor/redux-framework/ReduxCore/assets/img/1c.png0.13KB0.13KB▼ 0.72%
vendor/redux-framework/ReduxCore/assets/css/vendor/jquery-ui-bootstrap/images/ui-bg_glass_55_fbf9ee_1x400.png0.12KB0.14KB0.00%
vendor/redux-framework/ReduxCore/assets/img/2cr.png2.92KB0.24KB▼ 91.69%
vendor/redux-framework/ReduxCore/assets/img/toggle_tabs.png0.35KB0.35KB0.00%
vendor/redux-framework/sample/patterns/triangular.png0.21KB0.22KB0.00%