SEOWriting

AI writing assistant for creating SEO-optimized content with auto-publishing & scheduling posts on WordPress websites.

v1.12.5seowritingUpdated Added 30k+ installs98% rating
52
Score
10
Errors
24
Warnings
+0
Change

Category Scores

Security17
Repo91
Performance100
Maintainability94

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

34 findings

Security

27

5 issue groups

Maintainability

5

4 issue groups

Repo Compliance

2

2 issue groups

ERRORSecurityOutput is not escapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"<a class='seowriting-tab nav-tab' href='#$seowritingTab' data-seowriting-tab='$seowritingTab'>$seowritingVal</a>"'.8
Category
Security
Occurrences
8
Severity
error

Sample message

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"<a class='seowriting-tab nav-tab' href='#$seowritingTab' data-seowriting-tab='$seowritingTab'>$seowritingVal</a>"'.

WARNINGSecurityRequest data is not unslashed$_GET[&#039;m&#039;] not unslashed before sanitization. Use wp_unslash() or similar8
Category
Security
Occurrences
8
Severity
warning

Sample message

$_GET[&#039;m&#039;] not unslashed before sanitization. Use wp_unslash() or similar

WARNINGSecurityNonce verification recommendedProcessing form data without nonce verification.5
Category
Security
Occurrences
5
Severity
warning

Sample message

Processing form data without nonce verification.

WARNINGSecurityInput is not validatedDetected usage of a possibly undefined superglobal array index: $_POST[&#039;SWR_NONCE&#039;]. Check that the array index exists before using it.4
Category
Security
Occurrences
4
Severity
warning

Sample message

Detected usage of a possibly undefined superglobal array index: $_POST[&#039;SWR_NONCE&#039;]. Check that the array index exists before using it.

WARNINGMaintainabilityDiscouraged PHP functionThe use of function set_time_limit() is discouraged2
Category
Maintainability
Occurrences
2
Severity
warning

Sample message

The use of function set_time_limit() is discouraged

WARNINGSecurityInput is not sanitizedDetected usage of a non-sanitized input variable: $_POST[$key]2
Category
Security
Occurrences
2
Severity
warning

Sample message

Detected usage of a non-sanitized input variable: $_POST[$key]

WARNINGMaintainabilityDirect QueryUse of a direct database call is discouraged.1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

Use of a direct database call is discouraged.

WARNINGMaintainabilityNo CachingDirect database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().

ERRORMaintainabilityMissing direct file access protectionPHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;1
Category
Maintainability
Occurrences
1
Severity
error

Sample message

PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;

ERRORRepo Complianceoutdated tested upto headerTested up to: 6.9 < 7.0. The "Tested up to" value in your plugin is not set to the current version of WordPress. This means your plugin will not show up in searches, as we require plugins to be compatible and documented as tested up to the most recent version of WordPress.1
Category
Repo Compliance
Occurrences
1
Severity
error

Sample message

Tested up to: 6.9 < 7.0. The "Tested up to" value in your plugin is not set to the current version of WordPress. This means your plugin will not show up in searches, as we require plugins to be compatible and documented as tested up to the most recent version of WordPress.

Show 1 more
WARNINGRepo Complianceplugin header nonexistent domain path1
Category
Repo Compliance
Occurrences
1
Severity
warning

Sample message

The "Domain Path" header in the plugin file must point to an existing folder. Found: "languages"

External Connections

Not analyzed yet.

Score History

First score snapshot

v1.12.5

52

Latest

Findings
34
Errors
10
Warnings
24
Check
2.0.0

Relationship Map

Author, categories, issues, domains, and nearby plugins.

23 nodes

Related Plugins

Writesonic

1k+ active installs

35