71% deepcore

Code Review | Deep Core

WordPress plugin Deep Core scored 71% from 54 tests.

About plugin

  • Plugin page: deepcore
  • Plugin version: 2.1.2
  • PHP compatiblity: 7.0+
  • PHP version: 7.4.16
  • WordPress compatibility: 4.7-5.9
  • WordPress version: 5.9.2
  • First release: Nov 28, 2020
  • Latest release: Feb 6, 2022
  • Number of updates: 30
  • Update frequency: every 14.6 days
  • Top authors: webnus (100%)

Code review

54 tests

User reviews

1 review

Install metrics

3,000+ active / 43,300 total downloads

Benchmarks

Plugin footprint 81% from 16 tests

Installer Passed 1 test

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

Server metrics [RAM: ▲2.21MB] [CPU: ▲577.59ms] 25% from 4 tests

An overview of server-side resources used by Deep Core
Please have a look at the following items
  • CPU: Try to keep total CPU usage under 500.00ms (currently 1,163.48ms on /wp-admin/admin.php?page=wn-admin-performance)
  • RAM: The total memory usage must be kept under 10MB (currently 13.50MB on /wp-admin/admin.php?page=wn-admin-options)
  • Extra CPU: Extra CPU usage should be kept under 200.00ms (currently 577.59ms on /wp-admin/admin.php?page=wn-admin-performance)
PageMemory (MB)CPU Time (ms)
Home /11.54 ▲8.02105.95 ▲48.48
Dashboard /wp-admin5.60 ▲2.191,210.87 ▲1,171.06
Posts /wp-admin/edit.php5.83 ▲2.191,145.87 ▲1,104.04
Add New Post /wp-admin/post-new.php9.18 ▲2.211,254.40 ▼13.21
Media Library /wp-admin/upload.php5.56 ▲2.271,407.33 ▲1,366.01
Redux /wp-admin/options-general.php?page=redux-framework5.621,172.51
Header Builder /wp-admin/admin.php?page=webnus_header_builder5.721,157.63
Wizard /wp-admin/index.php?page=webnus-setup-wizard4.731,174.08
Help /wp-admin/admin.php?page=wn-admin-help5.571,183.72
Footer Builder /wp-admin/edit.php?post_type=wbf_footer5.601,144.30
Options /wp-admin/admin.php?page=wn-admin-options13.501,294.34
Widgets /wp-admin/widgets.php7.451,225.00
Plugins /wp-admin/admin.php?page=wn-admin-plugins5.561,181.24
Dashboard /wp-admin/plugins.php?page=meta-box5.611,194.18
Performance /wp-admin/admin.php?page=wn-admin-performance5.551,163.48

Server storage [IO: ▲24.60MB] [DB: ▲0.02MB] Passed 3 tests

Filesystem and database footprint
No storage issues were detected
Filesystem: 2,512 new files
Database: no new tables, 26 new options
New WordPress options
deep_options
deep_notifications
widget_deep_youtube_widget
widget_crtext
widget_webnustestimonialwidget
colorful-categories-adbv
widget_deep_latestreview
whb_data_frontend_components
widget_deep_recnet_post
whb_data_editor_components
...

Browser metrics Passed 4 tests

A check of browser resources used by Deep Core
This plugin has a minimal impact on browser resources
PageNodesMemory (MB)Script (ms)Layout (ms)
Home /4,540 ▲81816.71 ▲0.6914.24 ▲7.482.65 ▲0.30
Dashboard /wp-admin3,384 ▲5266.27 ▲0.14119.76 ▼17.04178.85 ▲18.51
Posts /wp-admin/edit.php3,185 ▲4943.27 ▲0.0269.78 ▲4.38155.73 ▼37.59
Add New Post /wp-admin/post-new.php2,251 ▲59025.58 ▲9.21407.19 ▼21.11271.85 ▲111.12
Media Library /wp-admin/upload.php2,255 ▲5575.85 ▲0.34158.81 ▲17.59200.06 ▲18.81
Redux /wp-admin/options-general.php?page=redux-framework1,8344.29106.36355.79
Header Builder /wp-admin/admin.php?page=webnus_header_builder4,7156.43133.53107.63
Wizard /wp-admin/index.php?page=webnus-setup-wizard2,1445.16126.36309.56
Help /wp-admin/admin.php?page=wn-admin-help1,9735.24126.71179.09
Footer Builder /wp-admin/edit.php?post_type=wbf_footer1,7923.4165.88123.75
Options /wp-admin/admin.php?page=wn-admin-options12,8268.45197.13322.81
Widgets /wp-admin/widgets.php3,42432.36641.61221.02
Plugins /wp-admin/admin.php?page=wn-admin-plugins1,7823.2467.31177.01
Dashboard /wp-admin/plugins.php?page=meta-box2,2582.7859.41176.18
Performance /wp-admin/admin.php?page=wn-admin-performance1,6095.0587.50201.92

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

🔸 Tests weight: 35 | The uninstall procedure must remove all plugin files and extra database tables
It is recommended to fix the following
  • Zombie WordPress options were found after uninstall: 26 options
    • widget_deep_youtube_widget
    • deep_notifications
    • widget_deep_popularposts
    • widget_webnussocialwidget
    • widget_deep_latestposts
    • widget_crtext
    • widget_colorful_categories_widget
    • widget_webnustestimonialwidget
    • whb_data_editor_components
    • deep_options
    • ...

Smoke tests 25% from 4 tests

Server-side errors Passed 1 test

🔹 Test weight: 20 | Just a short smoke test targeting errors on the server (in the Apache logs)
Even though no errors were found, this is by no means an exhaustive test

SRP 0% from 2 tests

🔹 Tests weight: 20 | The single-responsibility principle: PHP files have to remain inert when accessed directly, throwing no errors and performing no actions
Please fix the following
  • 6× PHP files output text when accessed directly:
    • > /wp-content/plugins/deepcore/src/admin/meta-box/meta-box-core/inc/templates/upload.php
    • > /wp-content/plugins/deepcore/src/admin/meta-box/meta-box-core/inc/templates/media.php
    • > /wp-content/plugins/deepcore/src/admin/importer/one-click-demo-import/one-click-demo-import.php
    • > /wp-content/plugins/deepcore/src/admin/meta-box/meta-box-core/inc/templates/video.php
    • > /wp-content/plugins/deepcore/src/admin/meta-box/meta-box-core/inc/templates/audio.php
    • > /wp-content/plugins/deepcore/src/admin/meta-box/meta-box-core/inc/templates/image-advanced.php
  • 338× GET requests to PHP files trigger server-side errors or Error 500 responses (only 10 are shown):
    • > PHP Fatal error
      Uncaught Error: Call to undefined function add_shortcode() in wp-content/plugins/deepcore/src/components/webnus-core/widgets/about.php:30
    • > PHP Fatal error
      Uncaught Error: Class 'Elementor\\Widget_Base' not found in wp-content/plugins/deepcore/src/components/elementor/widgets/our-process.php:4
    • > PHP Fatal error
      Uncaught Error: Class 'OCDI\\PluginInstaller' not found in wp-content/plugins/deepcore/src/admin/importer/one-click-demo-import/views/import.php:10
    • > PHP Fatal error
      Uncaught Error: Call to undefined function deep_options() in wp-content/plugins/deepcore/src/templates/subscribe-bar.php:2
    • > PHP Fatal error
      Uncaught Error: Call to undefined function add_filter() in wp-content/plugins/deepcore/src/admin/header-builder/includes/elements/components/frontend/whb-menu-frontend.php:229
    • > PHP Fatal error
      Uncaught Error: Call to undefined function get_option() in wp-content/plugins/deepcore/src/components/dynamicfiles/dyncss.php:3
    • > PHP Fatal error
      Uncaught Error: Class 'WHB_Helper' not found in wp-content/plugins/deepcore/src/admin/header-builder/includes/elements/components/frontend/whb-social-frontend.php:189
    • > PHP Fatal error
      Uncaught Error: Call to undefined function esc_html__() in wp-content/plugins/deepcore/src/admin/theme-options/ReduxCore/templates/panel/header.tpl.php:11
    • > PHP Fatal error
      Uncaught Error: Class 'Elementor\\Widget_Base' not found in wp-content/plugins/deepcore/src/components/elementor/widgets/image-carousel.php:4
    • > PHP Fatal error
      Uncaught Error: Class 'RWMB_Field' not found in wp-content/plugins/deepcore/src/admin/meta-box/meta-box-core/inc/fields/custom-html.php:11

User-side errors 0% from 1 test

🔹 Test weight: 20 | This is a smoke test targeting browser errors/issues
These are user-side errors you should fix
    • > GET request to /wp-admin/admin.php?page=webnus_header_builder
    • > Network (severe)
    wp-content/plugins/deepcore//src/components/admin/header-builder/img/header-minimal-blog.png - Failed to load resource: the server responded with a status of 404 (Not Found)
    • > GET request to /wp-admin/admin.php?page=webnus_header_builder
    • > Network (severe)
    wp-content/plugins/deepcore//src/components/admin/header-builder/img/header-agency2.png - Failed to load resource: the server responded with a status of 404 (Not Found)
    • > GET request to /wp-admin/admin.php?page=webnus_header_builder
    • > Network (severe)
    wp-content/plugins/deepcore//src/components/admin/header-builder/img/header-magazine.png - Failed to load resource: the server responded with a status of 404 (Not Found)
    • > GET request to /wp-admin/admin.php?page=webnus_header_builder
    • > Network (severe)
    wp-content/plugins/deepcore/assets/dist/css/frontend/dynamic-style/header.dyn.css?ver=32 - Failed to load resource: the server responded with a status of 404 (Not Found)
    • > GET request to /wp-admin/admin.php?page=wn-admin-help
    • > Javascript (severe) in unknown
    /wp-content/plugins/deepcore/assets/dist/js/backend/help.js?ver=2.1.2 0:224 Uncaught TypeError: Cannot read properties of null (reading 'addEventListener')

Optimizations

Plugin configuration 93% from 29 tests

readme.txt 94% from 16 tests

The readme.txt file is undoubtedly the most important file in your plugin, preparing it for public listing on WordPress.org
These attributes need to be fixed:
  • Screenshots: No descriptions were found for these screenshots #1, #10, #11, #12, #13, #14, #15, #2, #3, #4, #5, #6, #7, #8, #9 in deepcore/assets to your readme.txt
Please take inspiration from this readme.txt

deepcore/deepcore.php 92% from 13 tests

The principal PHP file in "Deep Core" v. 2.1.2 is loaded by WordPress automatically on each request
You should first fix the following items:
  • Text Domain: The text domain is optional since WordPress version 4.6; if you do specify it, it must be the same as the plugin slug

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 plugin217,997 lines of code in 1,897 files:
LanguageFilesBlank linesComment linesLines of code
PHP76023,95439,540148,592
JavaScript3776,8073,47828,586
CSS5404,61947112,708
Sass871,7598712,057
SVG102833710,711
XML112773973,529
PO File115145671,384
Markdown3790314
JSON50083
LESS14033

PHP code 50% from 2 tests

Analyzing cyclomatic complexity and code structure
These items need your attention
  • Cyclomatic complexity of methods should be reduced to less than 100 (currently 334)
Cyclomatic complexity
Average complexity per logical line of code0.39
Average class complexity23.04
▷ Minimum class complexity1.00
▷ Maximum class complexity477.00
Average method complexity3.98
▷ Minimum method complexity1.00
▷ Maximum method complexity334.00
Code structure
Namespaces23
Interfaces1
Traits0
Classes537
▷ Abstract classes152.79%
▷ Concrete classes52297.21%
▷ Final classes30.57%
Methods3,980
▷ Static methods80120.13%
▷ Public methods3,07077.14%
▷ Protected methods59014.82%
▷ Private methods3208.04%
Functions255
▷ Named functions23391.37%
▷ Anonymous functions228.63%
Constants148
▷ Global constants3523.65%
▷ Class constants11376.35%
▷ Public constants113100.00%

Plugin size 50% from 2 tests

Image compression 50% from 2 tests

All PNG images should be compressed to minimize bandwidth usage for end users
239 PNG files occupy 1.96MB with 0.63MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant
FileSize - originalSize - compressedSavings
src/admin/theme-options/ReduxCore/assets/img/jquery-ui-bootstrap/ui-icons_2e83ff_256x240.png4.10KB4.11KB0.00%
assets/dist/images/bgs/subtle_freckles2.png24.09KB11.63KB▼ 51.74%
assets/dist/images/theme-options/blog-type3.png4.92KB2.47KB▼ 49.78%
assets/dist/images/theme-options/menu9.png13.91KB6.49KB▼ 53.34%
src/admin/theme-options/ReduxCore/assets/img/raw/jquery-ui-bootstrap/ui-bg_glass_65_ffffff_1x400.png0.10KB0.10KB▼ 5.71%