Better Robots.txt – AI-Ready Crawl Control & Bot Governance

Replace the default WordPress robots.txt workflow with a smarter, structured version you can preview before publishing, with Free, Pro, and Premium ed …

v3.1.0PagupUpdated Added 6k+ installs90% rating
31
Score
90
Errors
85
Warnings
+0
Change

Category Scores

Security0
Repo88
Performance100
Maintainability39

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

175 findings

Maintainability

74

17 issue groups

Security

52

5 issue groups

I18n

42

3 issue groups

ERRORI18nText Domain MismatchMismatched text domain. Expected 'better-robots-txt' but got "bulk-image-alt-text-with-yoast".36
Category
I18n
Occurrences
36
Severity
error

Sample message

Mismatched text domain. Expected 'better-robots-txt' but got "bulk-image-alt-text-with-yoast".

WARNINGMaintainabilityerror log error logerror_log() found. Debug code should not normally be used in production.25
Category
Maintainability
Occurrences
25
Severity
warning

Sample message

error_log() found. Debug code should not normally be used in production.

WARNINGSecurityMissingProcessing form data without nonce verification.23
Category
Security
Occurrences
23
Severity
warning

Sample message

Processing form data without nonce verification.

WARNINGSecurityMissing Unslash$_POST[$key] not unslashed before sanitization. Use wp_unslash() or similar11
Category
Security
Occurrences
11
Severity
warning

Sample message

$_POST[$key] not unslashed before sanitization. Use wp_unslash() or similar

WARNINGSecurityInput Not SanitizedDetected usage of a non-sanitized input variable: $_FILES['config_file']['tmp_name']9
Category
Security
Occurrences
9
Severity
warning

Sample message

Detected usage of a non-sanitized input variable: $_FILES['config_file']['tmp_name']

ERRORMaintainabilitycurl curl setoptUsing cURL functions is highly discouraged. Use wp_remote_get() instead.8
Category
Maintainability
Occurrences
8
Severity
error

Sample message

Using cURL functions is highly discouraged. Use wp_remote_get() instead.

ERRORMaintainabilityfile system operations is writableFile operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: is_writable().8
Category
Maintainability
Occurrences
8
Severity
error

Sample message

File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: is_writable().

ERRORMaintainabilityparse url parse urlparse_url() is discouraged because of inconsistency in the output across PHP versions; use wp_parse_url() instead.7
Category
Maintainability
Occurrences
7
Severity
error

Sample message

parse_url() is discouraged because of inconsistency in the output across PHP versions; use wp_parse_url() instead.

ERRORSecurityOutput Not EscapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"<!doctype html><html><head><meta charset=\"utf-8\"><meta name=\"viewport\" content=\"width=device-width, initial-scale=1\"><title>{$title}</title></head><body>"'.6
Category
Security
Occurrences
6
Severity
error

Sample message

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"<!doctype html><html><head><meta charset=\"utf-8\"><meta name=\"viewport\" content=\"width=device-width, initial-scale=1\"><title>{$title}</title></head><body>"'.

ERRORMaintainabilityunlink unlinkunlink() is discouraged. Use wp_delete_file() to delete a file.6
Category
Maintainability
Occurrences
6
Severity
error

Sample message

unlink() is discouraged. Use wp_delete_file() to delete a file.

Show 15 more
ERRORI18nMissing Translators Comment5
Category
I18n
Occurrences
5
Severity
error

Sample message

A function call to __() with texts containing placeholders was found, but was not accompanied by a "translators:" comment on the line above to clarify the meaning of the placeholders.

WARNINGMaintainabilityprevent path disclosure error reporting3
Category
Maintainability
Occurrences
3
Severity
warning

Sample message

error_reporting() can lead to full path disclosure.

WARNINGSecurityRecommended3
Category
Security
Occurrences
3
Severity
warning

Sample message

Processing form data without nonce verification.

ERRORMaintainabilitycurl curl close2
Category
Maintainability
Occurrences
2
Severity
error

Sample message

Using cURL functions is highly discouraged. Use wp_remote_get() instead.

ERRORMaintainabilitycurl curl exec2
Category
Maintainability
Occurrences
2
Severity
error

Sample message

Using cURL functions is highly discouraged. Use wp_remote_get() instead.

ERRORMaintainabilitycurl curl getinfo2
Category
Maintainability
Occurrences
2
Severity
error

Sample message

Using cURL functions is highly discouraged. Use wp_remote_get() instead.

ERRORMaintainabilitycurl curl init2
Category
Maintainability
Occurrences
2
Severity
error

Sample message

Using cURL functions is highly discouraged. Use wp_remote_get() instead.

ERRORMaintainabilityNon Enqueued Script2
Category
Maintainability
Occurrences
2
Severity
error

Sample message

Scripts must be registered/enqueued via wp_enqueue_script()

ERRORMaintainabilitymissing direct file access protection2
Category
Maintainability
Occurrences
2
Severity
error

Sample message

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

WARNINGI18nload plugin textdomain Found1
Category
I18n
Occurrences
1
Severity
warning

Sample message

load_plugin_textdomain() has been discouraged since WordPress version 4.6. When your plugin is hosted on WordPress.org, you no longer need to manually include this function call for translations under your plugin slug. WordPress will automatically load the translations for you as needed.

WARNINGMaintainabilityABSPATHDetected1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

Writing files using ABSPATH may be problematic. Consider using wp_upload_dir() instead if storing user data or generated files.

WARNINGMaintainabilityDirect Query1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

Use of a direct database call is discouraged.

WARNINGMaintainabilityNo Caching1
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().

WARNINGMaintainabilityNon Prefixed Variable Found1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: &quot;$pluginManager&quot;.

WARNINGMaintainabilityVariable Constant Name Found1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

Global constants defined by a theme/plugin should start with the theme/plugin prefix. Found: &quot;$name&quot;.

Score History

First score snapshot

v3.1.0

31

Latest

Findings
175
Errors
90
Warnings
85
Check
2.0.0

Related Plugins

WP Robots Txt

50k+ active installs

98
Robots.txt Editor

10k+ active installs

72
Virtual Robots.txt

40k+ active installs

55