LazyLoad Plugin – Lazy Load Images, Videos, and Iframes

The best free lazy load plugin for WordPress. Lazy load images, videos, and iframes to improve performance and Core Web Vitals scores.

v2.4.0WP MediaUpdated 2025-10-17Added Jan 1, 2014100k+ installs84% rating
40
Score
31
Errors
17
Warnings
+0
Change

Category Scores

Security2
Repo77
Performance100
Maintainability86

Top Issues by Category

Issues Details

48 issues found in latest scan

ERROR14
WordPress.Security.EscapeOutput.OutputNotEscaped

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$heading_tag'.

ERROR9
WordPress.Security.EscapeOutput.ExceptionNotEscaped

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$id'.

WARNING6
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound

Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$action_url".

WARNING4
WordPress.NamingConventions.PrefixAllGlobals.DynamicHooknameFound

Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "$name".

WARNING2
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound

Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "persist_{$this->settings_key}".

ERROR2
badly_named_files

File and folder names must not contain spaces or special characters.

WARNING1
PluginCheck.CodeAnalysis.DiscouragedFunctions.load_plugin_textdomainFound

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.

ERROR1
PluginCheck.CodeAnalysis.SettingSanitization.register_settingMissing

Sanitization missing for register_setting().

ERROR1
WordPress.Security.EscapeOutput.UnsafePrintingFunction

All output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'.

WARNING1
mismatched_plugin_name

Plugin name "LazyLoad Plugin – Lazy Load Images, Videos, and Iframes" is different from the name declared in plugin header "Lazy Load - Optimize Images".

ERROR1
missing_direct_file_access_protection

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

ERROR1
no_license

Missing "License". Please update your readme with a valid GPLv2 (or later) compatible license.

ERROR1
outdated_tested_upto_header

Tested up to: 6.8 < 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.

ERROR1
plugin_header_no_license

Missing "License" in Plugin Header. Please update your Plugin Header with a valid GPLv2 (or later) compatible license.

WARNING1
plugin_header_nonexistent_domain_path

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

WARNING1
readme_parser_warnings_too_many_tags

One or more tags were ignored. Please limit your plugin to 5 tags.

WARNING1
trademarked_term

The plugin name includes a restricted term. Your chosen plugin name - "LazyLoad Plugin – Lazy Load Images, Videos, and Iframes" - contains the restricted term "plugin" which cannot be used at all in your plugin name.

Latest Snapshot

Findings

48

Errors

31

Warnings

17

Score History

First score snapshot

First scan completed Jun 20, 2026

v2.4.0 · Plugin Check 2.0.0 · Model 2026.06-mvp-static-v2

Jun 20, 2026

v2.4.0

40

Latest

Findings
48
Errors
31
Warnings
17
Plugin Check
2.0.0
Model
2026.06-mvp-static-v2

Related Plugins