63% complete-google-seo-scan

Code Review | Complete Google Seo Scan

WordPress plugin Complete Google Seo Scan scored63%from 54 tests.

About plugin

  • Plugin page: complete-google-s...
  • Plugin version: 3.5.1
  • PHP version: 7.4.16
  • WordPress version: 6.3.1
  • First release: Aug 27, 2013
  • Latest release: Oct 12, 2023
  • Number of updates: 81
  • Update frequency: every 45.7 days
  • Top authors: nirjhar_lo (100%)

Code review

54 tests

User reviews

9 reviews

Install metrics

200+ active /27,537 total downloads

Benchmarks

Plugin footprint 48% from 16 tests

Installer Passed 1 test

🔺 Critical test (weight: 50) | The install procedure must perform silently
This plugin's installer ran successfully

Server metrics [RAM: ▲0.14MB] [CPU: ▼1.84ms] Passed 4 tests

Analyzing server-side resources used by Complete Google Seo Scan
This plugin does not affect your website's performance
PageMemory (MB)CPU Time (ms)
Home /3.60 ▲0.1446.63 ▲7.37
Dashboard /wp-admin3.44 ▲0.1451.88 ▲3.57
Posts /wp-admin/edit.php3.56 ▲0.2047.77 ▼0.33
Add New Post /wp-admin/post-new.php6.02 ▲0.1486.55 ▼14.92
Media Library /wp-admin/upload.php3.37 ▲0.1440.27 ▲4.31
Page /wp-admin/admin.php?page=seo-scan-page3.3534.16
Post /wp-admin/admin.php?page=seo-scan-post3.3536.17
Overview /wp-admin/admin.php?page=seo-scan3.3633.94

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

Filesystem and database footprint
This plugin installed successfully
Filesystem: 36 new files
Database: 1 new table, 7 new options
New tables
wp_cgss_insight
New WordPress options
db_upgraded
_plugin_db_exist
widget_recent-comments
widget_recent-posts
can_compress_scripts
theysaidso_admin_options
widget_theysaidso_widget

Browser metrics Passed 4 tests

Complete Google Seo Scan: an overview of browser usage
Minimal impact on browser resources
PageNodesMemory (MB)Script (ms)Layout (ms)
Home /2,824 ▲6314.18 ▼0.171.78 ▼0.0544.69 ▲5.63
Dashboard /wp-admin2,233 ▲555.59 ▼0.0595.22 ▼3.8041.32 ▼1.70
Posts /wp-admin/edit.php2,135 ▲351.96 ▼0.0133.00 ▼3.4032.02 ▼2.07
Add New Post /wp-admin/post-new.php1,555 ▲2923.18 ▲0.02670.96 ▲25.1850.60 ▲4.99
Media Library /wp-admin/upload.php1,453 ▲504.23 ▲0.04104.19 ▼1.6445.21 ▼2.28
Page /wp-admin/admin.php?page=seo-scan-page1,0491.6624.1425.34
Post /wp-admin/admin.php?page=seo-scan-post1,0491.7024.9526.12
Overview /wp-admin/admin.php?page=seo-scan9521.9927.1329.15

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

🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
It is recommended to fix the following
  • This plugin did not uninstall without warnings or errors
    • > Warning in wp-includes/class-wp-hook.php+310
    call_user_func_array() expects parameter 1 to be a valid callback, class 'BUILD' not found
  • This plugin does not fully uninstall, leaving 1 table in the database
    • wp_cgss_insight
  • Zombie WordPress options detected upon uninstall: 7 options
    • widget_recent-comments
    • widget_recent-posts
    • theysaidso_admin_options
    • widget_theysaidso_widget
    • can_compress_scripts
    • db_upgraded
    • _plugin_db_exist

Smoke tests 75% from 4 tests

Server-side errors 0% from 1 test

🔹 Test weight: 20 | Just a short smoke test targeting errors on the server (in the Apache logs)
Please fix the following server-side errors
  • 2 occurences, only the last one shown
    • > GET request to /wp-admin/admin.php?page=seo-scan-post
    • > Notice in wp-content/plugins/complete-google-seo-scan/Plugin/Lib/Table.php+223
    Trying to access array offset on value of type int

SRP Passed 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
Congratulations! This plugin passed the SRP test

User-side errors Passed 1 test

🔹 Test weight: 20 | This is a smoke test targeting browser errors/issues
Everything seems fine on the user side

Optimizations

Plugin configuration 87% from 29 tests

readme.txt 88% from 16 tests

Don't ignore readme.txt as it is the file that instructs WordPress.org on how to present your plugin to the world
Attributes that need to be fixed:
  • Requires at least: Invalid plugin version format
  • Tags: Too many tags (23 tag instead of maximum 10); only the first 5 tags are used in your directory listing
You can take inspiration from this readme.txt

complete-google-seo-scan/complete-google-seo-scan.php 85% from 13 tests

The principal PHP file in "Complete Google Seo Scan" v. 3.5.1 is loaded by WordPress automatically on each request
Please take the time to fix the following:
  • Domain Path: The domain path points to an invalid folder, "/assets/ln" does not exist
  • 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 Passed 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 plugin2,606 lines of code in 31 files:
LanguageFilesBlank linesComment linesLines of code
PHP288646742,573
JSON20027
Markdown1406

PHP code Passed 2 tests

This is a very shot review of cyclomatic complexity and code structure
All good! No complexity issues found
Cyclomatic complexity
Average complexity per logical line of code0.30
Average class complexity16.10
▷ Minimum class complexity1.00
▷ Maximum class complexity63.00
Average method complexity2.84
▷ Minimum method complexity1.00
▷ Maximum method complexity20.00
Code structure
Namespaces8
Interfaces0
Traits0
Classes21
▷ Abstract classes00.00%
▷ Concrete classes21100.00%
▷ Final classes942.86%
Methods174
▷ Static methods2514.37%
▷ Public methods17198.28%
▷ Protected methods00.00%
▷ Private methods31.72%
Functions3
▷ Named functions133.33%
▷ Anonymous functions266.67%
Constants9
▷ Global constants9100.00%
▷ Class constants00.00%
▷ Public constants00.00%

Plugin size Passed 2 tests

Image compression Passed 2 tests

Often times overlooked, PNG files can occupy unnecessary space in your plugin
There are no PNG files in this plugin