61% siri-wp-security

Code Review | Siri WP Security

WordPress plugin Siri WP Security scored61%from 54 tests.

About plugin

  • Plugin page: siri-wp-security
  • Plugin version: Alpha...
  • PHP version: 7.4.16
  • WordPress compatibility: 3.3-3.6
  • WordPress version: 6.3.1
  • First release: Aug 20, 2013
  • Latest release: Aug 20, 2013
  • Number of updates: 18
  • Update frequency: N/A
  • Top authors: siriinnovations (100%)

Code review

54 tests

User reviews

3 reviews

Install metrics

10+ active /2,793 total downloads

Benchmarks

Plugin footprint 65% from 16 tests

Installer Passed 1 test

🔺 Critical test (weight: 50) | Verifying that this plugin installs correctly without errors
Install script ran successfully

Server metrics [RAM: ▼0.37MB] [CPU: ▼35.04ms] Passed 4 tests

A check of server-side resources used by Siri WP Security
Server-side resource usage in normal parameters
PageMemory (MB)CPU Time (ms)
Home /3.36 ▼0.1019.89 ▼22.01
Dashboard /wp-admin3.73 ▲0.4221.17 ▼29.73
Posts /wp-admin/edit.php3.73 ▲0.3722.02 ▼22.65
Add New Post /wp-admin/post-new.php3.73 ▼2.1623.29 ▼65.76
Media Library /wp-admin/upload.php3.73 ▲0.5022.06 ▼15.39
Siri WP Security /wp-admin/options-general.php?page=secure_wp3.7321.20
Custom Login Upgrades /wp-admin/admin.php?page=custom-login-upgrades3.7324.21
Welcome to Custom Login /wp-admin/index.php?page=custom-login-about3.7320.19

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

How much does this plugin use your filesystem and database?
This plugin was installed successfully
Filesystem: 85 new files
Database: no new tables, 8 new options
New WordPress options
secure_wp
db_upgraded
theysaidso_admin_options
custom_login
widget_recent-posts
can_compress_scripts
widget_theysaidso_widget
widget_recent-comments

Browser metrics Passed 4 tests

A check of browser resources used by Siri WP Security
Normal browser usage
PageNodesMemory (MB)Script (ms)Layout (ms)
Home /2,954 ▲19214.24 ▼0.111.71 ▼0.1142.24 ▼1.79
Dashboard /wp-admin2,345 ▲1686.11 ▲0.51114.50 ▲14.0885.12 ▲41.20
Posts /wp-admin/edit.php2,291 ▲1913.34 ▲1.3451.09 ▲13.0774.68 ▲36.74
Add New Post /wp-admin/post-new.php1,704 ▲16922.04 ▼2.93756.00 ▲119.9829.15 ▼31.70
Media Library /wp-admin/upload.php1,428 ▲284.18 ▼0.0380.77 ▼18.6283.76 ▲38.44
Siri WP Security /wp-admin/options-general.php?page=secure_wp5,2955.49204.15159.17
Custom Login Upgrades /wp-admin/admin.php?page=custom-login-upgrades1,9685.5769.9768.66
Welcome to Custom Login /wp-admin/index.php?page=custom-login-about1,0022.9837.2565.84

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

🔸 Tests weight: 35 | It is important to correctly uninstall your plugin, without leaving any traces
The following items require your attention
  • Uninstall procedure validation failed for this plugin
    • > Notice in wp-content/plugins/siri-wp-security/custom-login.php+2120
    Accessing static property Secure_login::$settings_api as non static
  • This plugin did not uninstall successfully, leaving 7 options in the database
    • can_compress_scripts
    • secure_wp
    • db_upgraded
    • widget_recent-posts
    • widget_theysaidso_widget
    • theysaidso_admin_options
    • widget_recent-comments

Smoke tests 25% 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)
Almost there, just fix the following server-side errors
  • 40 occurences, only the last one shown
    • > GET request to /wp-admin/index.php?page=custom-login-about
    • > Notice in wp-content/plugins/siri-wp-security/custom-login.php+2599
    Accessing static property Secure_login::$settings_api as non static
  • 4 occurences, only the last one shown
    • > GET request to /wp-admin/index.php?page=custom-login-about
    • > Notice in wp-content/plugins/siri-wp-security/custom-login.php+2624
    Accessing static property Secure_login::$options_page as non static
  • 4 occurences, only the last one shown
    • > GET request to /wp-admin/index.php?page=custom-login-about
    • > Notice in wp-content/plugins/siri-wp-security/custom-login.php+2624
    Undefined property: Secure_login::$options_page
  • 10 occurences, only the last one shown
    • > GET request to /wp-admin/index.php?page=custom-login-about
    • > Notice in wp-content/plugins/siri-wp-security/custom-login.php+2595
    Accessing static property Secure_login::$sections as non static
    • > GET request to /wp-admin/options-general.php?page=secure_wp
    • > Warning in wp-content/plugins/siri-wp-security/lib/class.settings-api.php+581
    Illegal string offset 'editor'
    • > GET request to /wp-admin/options-general.php?page=secure_wp
    • > Warning in wp-content/plugins/siri-wp-security/lib/class.settings-api.php+581
    Illegal string offset 'author'
    • > GET request to /wp-admin/options-general.php?page=secure_wp
    • > Warning in wp-content/plugins/siri-wp-security/lib/class.settings-api.php+581
    Illegal string offset 'contributor'
    • > GET request to /wp-admin/options-general.php?page=secure_wp
    • > Warning in wp-content/plugins/siri-wp-security/lib/class.settings-api.php+581
    Illegal string offset 'subscriber'
  • 2 occurences, only the last one shown
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/classes/class.settings-api.php+706
    Invalid argument supplied for foreach()
  • 2 occurences, only the last one shown
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+61
    Illegal string offset 'active'
  • 25 occurences, only the last one shown
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Notice in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+107
    Trying to access array offset on value of type bool
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+62
    Illegal string offset 'html_background_color'
  • 33 occurences, only the last one shown
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+107
    Cannot assign an empty string to a string offset
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+63
    Illegal string offset 'html_background_color_checkbox'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+64
    Illegal string offset 'html_background_color_opacity'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+65
    Illegal string offset 'html_background_url'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+66
    Illegal string offset 'html_background_position'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+67
    Illegal string offset 'html_background_repeat'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+68
    Illegal string offset 'html_background_size'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+70
    Illegal string offset 'logo_background_url'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+71
    Illegal string offset 'logo_background_position'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+72
    Illegal string offset 'logo_background_repeat'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+73
    Illegal string offset 'logo_background_size'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+74
    Illegal string offset 'login_form_background_color'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+75
    Illegal string offset 'login_form_background_color_checkbox'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+76
    Illegal string offset 'login_form_background_color_opacity'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+77
    Illegal string offset 'login_form_background_url'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+78
    Illegal string offset 'login_form_background_position'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+79
    Illegal string offset 'login_form_background_repeat'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+80
    Illegal string offset 'login_form_background_size'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+81
    Illegal string offset 'login_form_border_radius'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+82
    Illegal string offset 'login_form_border_size'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+83
    Illegal string offset 'login_form_border_color'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+84
    Illegal string offset 'login_form_border_color_checkbox'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+85
    Illegal string offset 'login_form_border_color_opacity'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+86
    Illegal string offset 'login_form_box_shadow'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+87
    Illegal string offset 'login_form_box_shadow_color'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+88
    Illegal string offset 'login_form_box_shadow_color_checkbox'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+89
    Illegal string offset 'login_form_box_shadow_color_opacity'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+90
    Illegal string offset 'label_color'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+91
    Illegal string offset 'label_color_checkbox'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+92
    Illegal string offset 'label_color_opacity'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+93
    Illegal string offset 'nav_color'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+94
    Illegal string offset 'nav_color_checkbox'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+95
    Illegal string offset 'nav_color_opacity'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+96
    Illegal string offset 'nav_text_shadow_color'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+97
    Illegal string offset 'nav_text_shadow_color_checkbox'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+98
    Illegal string offset 'nav_text_shadow_color_opacity'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+99
    Illegal string offset 'nav_hover_color'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+100
    Illegal string offset 'nav_hover_color_checkbox'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+101
    Illegal string offset 'nav_hover_color_opacity'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+102
    Illegal string offset 'nav_text_shadow_hover_color'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+103
    Illegal string offset 'nav_text_shadow_hover_color_checkbox'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+104
    Illegal string offset 'nav_text_shadow_hover_color_opacity'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+105
    Illegal string offset 'custom_css'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+106
    Illegal string offset 'custom_html'
    • > GET request to /wp-admin/admin.php?page=custom-login-upgrades
    • > POST request to /wp-admin/admin-ajax.php
    • > Warning in wp-content/plugins/siri-wp-security/functions/upgrades/upgrade-functions.php+107
    Illegal string offset 'custom_jquery'

SRP 50% from 2 tests

🔹 Tests weight: 20 | SRP (Single-Responsibility Principle) - PHP files must act as libraries and never output text or perform any action when accessed directly in a browser
Please fix the following
  • 1× PHP files trigger server-side errors or warnings when accessed directly:
    • > PHP Fatal error
      Uncaught Error: Call to undefined function plugins_url() in wp-content/plugins/siri-wp-security/custom-login.php:27

User-side errors 0% from 1 test

🔹 Test weight: 20 | Just a short smoke test targeting errors on the browser (console and network errors and warnings)
Please fix the following browser errors
  • 2 occurences, only the last one shown
    • > GET request to /wp-admin/index.php?page=custom-login-about
    • > Network (severe)
    wp-content/plugins/siri-wp-security/assets/images/welcome-badge.png - Failed to load resource: the server responded with a status of 404 (Not Found)

Optimizations

Plugin configuration 83% from 29 tests

readme.txt 94% from 16 tests

You should put a lot of thought into formatting readme.txt as it is used by WordPress.org to prepare the public listing of your plugin
These attributes need to be fixed:
  • Screenshots: These screenshots do not have images: #1 (Custom login screen.), #2 (Deign your own login form.), #3 (Hide wp-login.php and can provide own path for login.), #4 (Additional setings for hide other of files .), #5 (Change your wordpress theme, style, wp-include, plugin and upload path.), #6 (Change Urls.), #7 (Import and exporting current settings.)
The official readme.txt might help

siri-wp-security/custom-login.php 69% from 13 tests

The entry point to "Siri WP Security" version Alpha... is a PHP file that has certain tags in its header comment area
You should first fix the following items:
  • Version: Plugin version number should only contain digits separated by dots (ex. "1.0.3" instead of "Alpha...")
  • Description: Please keep the plugin description shorter than 140 characters (currently 435 characters long)
  • Text Domain: The text domain name should consist of only dashes and lowercase characters
  • Main file name: Please rename the main PHP file in this plugin to the plugin slug ("siri-wp-security.php" instead of "custom-login.php")

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
No dangerous file extensions were detected5,858 lines of code in 24 files:
LanguageFilesBlank linesComment linesLines of code
PHP131,1141,0504,055
CSS51181241,426
PO File19697238
SVG10073
JavaScript418766

PHP code 50% from 2 tests

Analyzing logical lines of code, cyclomatic complexity, and other code metrics
It is recommended to fix the following
  • Method cyclomatic complexity has to be reduced to less than 100 (currently 147)
Cyclomatic complexity
Average complexity per logical line of code0.47
Average class complexity80.71
▷ Minimum class complexity4.00
▷ Maximum class complexity310.00
Average method complexity4.53
▷ Minimum method complexity1.00
▷ Maximum method complexity147.00
Code structure
Namespaces0
Interfaces0
Traits0
Classes7
▷ Abstract classes00.00%
▷ Concrete classes7100.00%
▷ Final classes00.00%
Methods158
▷ Static methods1710.76%
▷ Public methods158100.00%
▷ Protected methods00.00%
▷ Private methods00.00%
Functions15
▷ Named functions15100.00%
▷ Anonymous functions00.00%
Constants21
▷ Global constants1466.67%
▷ Class constants733.33%
▷ Public constants7100.00%

Plugin size 50% from 2 tests

Image compression 50% from 2 tests

Using a strong compression for your PNG files is a great way to speed-up your plugin
48 PNG files occupy 3.05MB with 1.45MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant
FileSize - originalSize - compressedSavings
images/bg.png29.41KB13.31KB▼ 54.73%
img/patters/pattern_3.png2.34KB2.45KB0.00%
img/Siri_Icon2.png216.25KB17.60KB▼ 91.86%
img/Help-icon1.png2.17KB1.44KB▼ 33.71%
img/Help-icon----.png58.92KB25.26KB▼ 57.12%