84% saints

Code Review | Saints

WordPress plugin Saints scored 84% from 54 tests.

About plugin

  • Plugin page: saints
  • Plugin version: 1.10.4
  • PHP compatiblity: 7.0+
  • PHP version: 7.4.16
  • WordPress compatibility: 5.7-5.7.2
  • WordPress version: 6.3.1
  • First release: May 15, 2021
  • Latest release: Jun 2, 2021
  • Number of updates: 117
  • Update frequency: every 0.2 days
  • Top authors: siamajor (100%)

Code review

54 tests

User reviews

1 review

Install metrics

10+ active / 422 total downloads

Benchmarks

Plugin footprint 83% from 16 tests

Installer Passed 1 test

🔺 Critical test (weight: 50) | The install procedure must perform silently
The plugin installed successfully, without throwing any errors or notices

Server metrics [RAM: ▲0.11MB] [CPU: ▲1.73ms] Passed 4 tests

This is a short check of server-side resources used by Saints
Normal server usage
PageMemory (MB)CPU Time (ms)
Home /3.58 ▲0.1243.53 ▼4.91
Dashboard /wp-admin3.40 ▲0.1058.24 ▲7.07
Posts /wp-admin/edit.php3.52 ▲0.1654.50 ▲2.93
Add New Post /wp-admin/post-new.php6.00 ▲0.12126.46 ▲26.81
Media Library /wp-admin/upload.php3.33 ▲0.1041.28 ▲1.81
Saints /wp-admin/options-general.php?page=saints_option3.2936.57

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

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

Browser metrics Passed 4 tests

Saints: an overview of browser usage
There were no issues detected in relation to browser resource usage
PageNodesMemory (MB)Script (ms)Layout (ms)
Home /2,808 ▲1913.23 ▲0.081.83 ▼0.1739.87 ▼9.51
Dashboard /wp-admin2,214 ▲54.91 ▲0.06111.12 ▼4.9439.68 ▼4.86
Posts /wp-admin/edit.php2,100 ▲112.06 ▼0.0842.31 ▲5.6737.85 ▲3.62
Add New Post /wp-admin/post-new.php1,530 ▲1118.49 ▼4.72592.44 ▼62.4454.76 ▼8.97
Media Library /wp-admin/upload.php1,399 ▲144.17 ▼0.0697.12 ▼5.0841.12 ▼0.74
Saints /wp-admin/options-general.php?page=saints_option1,0171.7727.1663.06

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

🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
It is recommended to fix the following
  • This plugin does not fully uninstall, leaving 8 options in the database
    • link
    • widget_theysaidso_widget
    • showicons
    • widget_recent-posts
    • can_compress_scripts
    • theysaidso_admin_options
    • widget_recent-comments
    • db_upgraded

Smoke tests 75% 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)
Good news, no errors were detected

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
  • 3× GET requests to PHP files return non-empty strings:
    • > /wp-content/plugins/saints/saints.php
    • > /wp-content/plugins/saints/admin/sia_admin.php
    • > /wp-content/plugins/saints/uninstall.php

User-side errors Passed 1 test

🔹 Test weight: 20 | This is a smoke test targeting browser errors/issues
No browser errors were detected

Optimizations

Plugin configuration 97% from 29 tests

readme.txt 94% from 16 tests

The readme.txt file describes your plugin functionality and requirements and it is parsed to prepare the your plugin's listing
Attributes that require attention:
  • Screenshots: These screenshots need descriptions #1, #2 in saints/assets to your readme.txt
You can look at the official readme.txt

saints/saints.php Passed 13 tests

The primary PHP file in "Saints" version 1.10.4 is used by WordPress to initiate all plugin functionality
93 characters long description:
Плагин выводит жизнеописания Святых на любую дату.

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
Success! There were no dangerous files found in this plugin1,905 lines of code in 28 files:
LanguageFilesBlank linesComment linesLines of code
CSS474201,040
PHP458150437
JavaScript18212235
PO File12935145
Markdown122048

PHP code Passed 2 tests

A brief analysis of cyclomatic complexity and code structure for this plugin
All good! No complexity issues found
Cyclomatic complexity
Average complexity per logical line of code0.42
Average class complexity0.00
▷ Minimum class complexity0.00
▷ Maximum class complexity0.00
Average method complexity0.00
▷ Minimum method complexity0.00
▷ Maximum method complexity0.00
Code structure
Namespaces0
Interfaces0
Traits0
Classes0
▷ Abstract classes00.00%
▷ Concrete classes00.00%
▷ Final classes00.00%
Methods0
▷ Static methods00.00%
▷ Public methods00.00%
▷ Protected methods00.00%
▷ Private methods00.00%
Functions23
▷ Named functions23100.00%
▷ Anonymous functions00.00%
Constants0
▷ Global constants00.00%
▷ Class constants00.00%
▷ Public constants00.00%

Plugin size Passed 2 tests

Image compression Passed 2 tests

It is recommended to compress PNG files in your plugin to minimize bandwidth usage
2 PNG files occupy 0.09MB with 0.04MB in potential savings
Potential savings
Compression of 2 random PNG files using pngquant
FileSize - originalSize - compressedSavings
css/decor.png40.65KB30.75KB▼ 24.35%
admin/css/435.png47.04KB19.53KB▼ 58.47%