{"id":260293,"date":"2026-02-07T19:39:59","date_gmt":"2026-02-07T19:39:59","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/ranklite-fast-clean-seo\/"},"modified":"2026-03-03T13:29:33","modified_gmt":"2026-03-03T13:29:33","slug":"ranklite","status":"publish","type":"plugin","link":"https:\/\/kin.wordpress.org\/plugins\/ranklite\/","author":23376945,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.0.4","stable_tag":"1.0.4","tested":"6.9.4","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"RankLite \u2013 Fast, Clean SEO","header_author":"RankLite","header_description":"Lightweight SEO plugin with titles, meta, sitemaps, schema, and simple analytics integrations.","assets_banners_color":"d7edfd","last_updated":"2026-03-03 13:29:33","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/ranklite.org","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":178,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.3":{"tag":"1.0.3","author":"ranklite","date":"2026-02-07 19:46:32"},"1.0.4":{"tag":"1.0.4","author":"ranklite","date":"2026-03-03 13:29:33"}},"upgrade_notice":{"1.0.1":"<p>Code cleanup and compatibility improvements based on WordPress.org review.<\/p>","1.0.2":"<ul>\n<li>Security hardening: sanitize\/validate inputs in admin handlers and term\/meta saves.<\/li>\n<li>Fix: close output buffers properly for schema exclusivity.<\/li>\n<li>Fix: harden settings import validation.<\/li>\n<\/ul>","1.0.3":"<p>Compatibility and security hardening: improved URL\/path handling, safer redirect sanitization, removed cross-hook output buffering, and form handling now reads only required fields.<\/p>","1.0.4":"<ul>\n<li>Fix: Sitemap rewrites\/router initialization issue on some installs.<\/li>\n<li>Add: Optional category and tags sitemap support.<\/li>\n<li>Fix: Cookie consent banner now closes correctly on accept\/reject\/manage.<\/li>\n<\/ul>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3456065,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3456065,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3456065,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3456065,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":{"ranklite\/faq":{"apiVersion":3,"name":"ranklite\/faq","title":"RankLite FAQ","category":"widgets","icon":"editor-help","description":"Structured FAQ (FAQPage JSON-LD).","keywords":["RankLite","FAQ","schema"],"supports":{"html":false},"editorScript":"ranklite-blocks-editor","attributes":{"title":{"type":"string","default":""},"items":{"type":"array","default":[]}}},"ranklite\/howto":{"apiVersion":3,"name":"ranklite\/howto","title":"RankLite HowTo","category":"widgets","icon":"editor-ol","description":"Step-by-step HowTo with JSON-LD.","keywords":["RankLite","HowTo","schema"],"supports":{"html":false},"editorScript":"ranklite-blocks-editor","attributes":{"name":{"type":"string","default":""},"steps":{"type":"array","default":[]},"totalTime":{"type":"string","default":""},"tool":{"type":"string","default":""},"supply":{"type":"string","default":""}}}},"tagged_versions":["1.0.3","1.0.4"],"block_files":[],"assets_screenshots":{"screenshot-1.PNG":{"filename":"screenshot-1.PNG","revision":3456065,"resolution":"1","location":"assets","locale":""},"screenshot-2.PNG":{"filename":"screenshot-2.PNG","revision":3456065,"resolution":"2","location":"assets","locale":""},"screenshot-3.PNG":{"filename":"screenshot-3.PNG","revision":3456065,"resolution":"3","location":"assets","locale":""},"screenshot-4.PNG":{"filename":"screenshot-4.PNG","revision":3456065,"resolution":"4","location":"assets","locale":""},"screenshot-5.PNG":{"filename":"screenshot-5.PNG","revision":3456065,"resolution":"5","location":"assets","locale":""},"screenshot-6.PNG":{"filename":"screenshot-6.PNG","revision":3456065,"resolution":"6","location":"assets","locale":""},"screenshot-7.PNG":{"filename":"screenshot-7.PNG","revision":3456065,"resolution":"7","location":"assets","locale":""}},"screenshots":{"1":"Titles &amp; Meta: per-post editor with live counters","2":"Global settings: Titles, Social, Indexing","3":"XML Sitemaps settings with Google\/Bing pings","4":"Schema (Website, Article, FAQ, How-to) basic controls","5":"Analytics helpers (GA4\/GTAG &amp; GTM passthrough settings)","6":"Redirects screen (manual 301s)","7":"Tools, uninstall &amp; reset options"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[2988,6487,1117,186,1557],"plugin_category":[55],"plugin_contributors":[255411],"plugin_business_model":[],"class_list":["post-260293","plugin","type-plugin","status-publish","hentry","plugin_tags-meta-tags","plugin_tags-open-graph","plugin_tags-schema","plugin_tags-seo","plugin_tags-sitemap","plugin_category-seo-and-marketing","plugin_contributors-ranklite","plugin_committers-ranklite"],"banners":{"banner":"https:\/\/ps.w.org\/ranklite\/assets\/banner-772x250.png?rev=3456065","banner_2x":"https:\/\/ps.w.org\/ranklite\/assets\/banner-1544x500.png?rev=3456065","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/ranklite\/assets\/icon-128x128.png?rev=3456065","icon_2x":"https:\/\/ps.w.org\/ranklite\/assets\/icon-256x256.png?rev=3456065","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/ranklite\/assets\/screenshot-1.PNG?rev=3456065","caption":"Titles &amp; Meta: per-post editor with live counters"},{"src":"https:\/\/ps.w.org\/ranklite\/assets\/screenshot-2.PNG?rev=3456065","caption":"Global settings: Titles, Social, Indexing"},{"src":"https:\/\/ps.w.org\/ranklite\/assets\/screenshot-3.PNG?rev=3456065","caption":"XML Sitemaps settings with Google\/Bing pings"},{"src":"https:\/\/ps.w.org\/ranklite\/assets\/screenshot-4.PNG?rev=3456065","caption":"Schema (Website, Article, FAQ, How-to) basic controls"},{"src":"https:\/\/ps.w.org\/ranklite\/assets\/screenshot-5.PNG?rev=3456065","caption":"Analytics helpers (GA4\/GTAG &amp; GTM passthrough settings)"},{"src":"https:\/\/ps.w.org\/ranklite\/assets\/screenshot-6.PNG?rev=3456065","caption":"Redirects screen (manual 301s)"},{"src":"https:\/\/ps.w.org\/ranklite\/assets\/screenshot-7.PNG?rev=3456065","caption":"Tools, uninstall &amp; reset options"}],"raw_content":"<!--section=description-->\n<p><strong>RankLite<\/strong> focuses on the essentials of on-page SEO. It\u2019s intentionally small, fast, and easy to configure. You get all the core tools\u2014without the kitchen sink:<\/p>\n\n<ul>\n<li><strong>Titles &amp; Meta Descriptions<\/strong> per post\/page with live counters<\/li>\n<li>Global defaults with smart fallbacks<\/li>\n<li><strong>Open Graph<\/strong> &amp; <strong>Twitter Cards<\/strong> (title, description, image)<\/li>\n<li><strong>Canonical<\/strong> and <strong>robots<\/strong> meta (index\/noindex, follow\/nofollow)<\/li>\n<li><strong>XML Sitemaps<\/strong> (<code>\/sitemap.xml<\/code>) with pretty permalink support and <strong>pings to Google &amp; Bing<\/strong><\/li>\n<li><strong>JSON-LD Schema<\/strong> for Website, Article, Breadcrumbs + FAQ\/How-to blocks (basic)<\/li>\n<li><strong>Breadcrumbs<\/strong> output helper<\/li>\n<li><strong>Manual 301 Redirects<\/strong><\/li>\n<li><strong>Analytics helpers<\/strong> (Google Analytics\/GTAG &amp; Google Tag Manager passthrough)<\/li>\n<li>Optional <strong>data wipe<\/strong> on uninstall<\/li>\n<li>Multisite-aware and performance-minded<\/li>\n<\/ul>\n\n<p>No telemetry. No ad pixels. No phone-home calls\u2014everything stays on your site.<\/p>\n\n<h3>Why RankLite?<\/h3>\n\n<ul>\n<li><strong>Performance first.<\/strong> Lightweight code, minimal queries, no admin nag spam.<\/li>\n<li><strong>No lock-in.<\/strong> Uses standard WordPress fields\/meta so you can switch any time.<\/li>\n<li><strong>Clean UI.<\/strong> Sensible defaults and clear controls that won\u2019t overwhelm you.<\/li>\n<\/ul>\n\n<h3>What\u2019s included in the Free version?<\/h3>\n\n<ul>\n<li>Titles\/meta with counters and fallbacks<\/li>\n<li>Canonical, robots<\/li>\n<li>Open Graph &amp; Twitter Cards<\/li>\n<li>Website\/Article\/Breadcrumbs + FAQ\/How-to schema (basic, JSON-LD)<\/li>\n<li>XML sitemaps with <strong>Google\/Bing pings<\/strong><\/li>\n<li>Breadcrumbs helper<\/li>\n<li>Manual redirects (301)<\/li>\n<li>Analytics &amp; GTM helpers<\/li>\n<li>Tools page with <strong>wipe on uninstall<\/strong> option<\/li>\n<\/ul>\n\n<h3>Pro add-on<\/h3>\n\n<p>A separate Pro add-on (not required) can extend RankLite with AI-assisted titles\/descriptions\/alt-text\/articles, advanced schema &amp; sitemaps, a 404 monitor, and auto-redirects. The free plugin is fully functional on its own and does not require Pro.<\/p>\n\n<h3>Features<\/h3>\n\n<ul>\n<li><strong>Meta box on posts\/pages<\/strong> for custom SEO Title &amp; Description<\/li>\n<li><strong>Smart fallback<\/strong> to site title\/tagline or post excerpt<\/li>\n<li><strong>Open Graph\/Twitter image<\/strong> fallback<\/li>\n<li><strong>Robots<\/strong> (index\/noindex, follow\/nofollow) per post and global<\/li>\n<li><strong>Sitemaps<\/strong>: index + post types; pretty <code>\/sitemap.xml<\/code> with:\n\n<ul>\n<li>Fallback query route for non-pretty permalinks<\/li>\n<li><strong>Automatic pings to Google and Bing<\/strong> when content changes (with safe throttling)<\/li>\n<\/ul><\/li>\n<li><strong>Schema<\/strong>: Website, Article, Breadcrumbs + FAQ\/How-to via blocks (basic) with safe defaults<\/li>\n<li><strong>Breadcrumbs<\/strong>: simple template function\/filter to output a trail<\/li>\n<li><strong>Redirects<\/strong>: add simple 301 manual redirects from an admin screen<\/li>\n<li><strong>Analytics<\/strong>: GA4\/gtag and GTM helpers (paste ID and go)<\/li>\n<li><strong>Developer-friendly<\/strong> (filters\/actions documented below)<\/li>\n<li><strong>Privacy-friendly<\/strong>: no data leaves your site<\/li>\n<\/ul>\n\n<h3>Privacy<\/h3>\n\n<p>This plugin <strong>does not<\/strong>:<\/p>\n\n<ul>\n<li>Collect personal data<\/li>\n<li>Send usage data to third parties<\/li>\n<li>Set cookies on the front end by itself<\/li>\n<\/ul>\n\n<p>If you enable Analytics or GTM helpers, you are integrating external services\u2014ensure you have the proper disclosures\/consent (e.g., via your cookie banner).<\/p>\n\n<h3>Performance<\/h3>\n\n<ul>\n<li>Minimal queries and safe caching behavior<\/li>\n<li>No assets loaded on the front end unless necessary<\/li>\n<li>Short timeouts and safe throttling for sitemap pings to Google\/Bing<\/li>\n<\/ul>\n\n<h3>External services<\/h3>\n\n<p>This plugin can optionally connect to the following external services:<\/p>\n\n<ol>\n<li>Google Search and Bing (sitemap ping)<\/li>\n<\/ol>\n\n<p>- What it does: When sitemap pinging is enabled, RankLite can notify search engines that your sitemap has been updated.\n- What is sent: The public URL of your sitemap is sent as a query parameter to:\n  - https:\/\/www.google.com\/ping?sitemap=\n  - https:\/\/www.bing.com\/ping?sitemap=\n- When: Only when sitemap pinging is enabled in the plugin settings and a sitemap is generated\/updated.\n- Terms \/ Privacy:\n  - Google: https:\/\/policies.google.com\/privacy \/ https:\/\/policies.google.com\/terms\n  - Microsoft (Bing): https:\/\/privacy.microsoft.com \/ https:\/\/www.microsoft.com\/servicesagreement<\/p>\n\n<ol>\n<li>Google Analytics \/ Google Tag Manager (optional)<\/li>\n<\/ol>\n\n<p>- What it does: If you choose to enable Analytics or Tag Manager in RankLite, the plugin outputs the official tracking\/snippet code provided by Google.\n- What is sent: Standard analytics\/usage data as defined by Google, associated with your own property IDs (e.g. GA4, GTM). No additional data is sent by RankLite beyond what Google\u2019s scripts normally collect.\n- When: Only when you explicitly enable these features and enter your own tracking IDs.\n- Terms \/ Privacy:\n  - Google Analytics \/ Tag Manager: https:\/\/marketingplatform.google.com\/about\/analytics\/terms\/us\/\n  - Google Privacy Policy: https:\/\/policies.google.com\/privacy<\/p>\n\n<h3>Developers<\/h3>\n\n<h3>Filter the final title string<\/h3>\n\n<pre><code>`php\n<\/code><\/pre>\n\n<p>\/**\n * Filter the final  value RankLite outputs.\n *\n * @param string       $title Final title string.\n * @param array        $parts Parsed parts (h1, site_name, brand, etc).\n * @param WP_Post|null $post  Current post object (or null).\n * @param string       $type  Detected type: 'news' | 'product' | 'default'.\n *\/\nadd_filter( 'ranklite_meta_title_final', function( $title, $parts, $post, $type ) {\n    return $title;\n}, 10, 4 );\n    `<\/p>\n\n<h3>Add extra sitemap index entries (e.g. news\/video)<\/h3>\n\n<pre><code>`php\n<\/code><\/pre>\n\n<p>add_filter( 'ranklite\/sitemaps\/index_items', function( $extra, $opts ) {\n    $extra[] = array(\n        'loc'     =&gt; home_url( '\/news-sitemap.xml' ),\n        'lastmod' =&gt; gmdate( 'c' ),\n    );\n    return $extra;\n}, 10, 2 );\n    `<\/p>\n\n<h3>Tweak the breadcrumb trail before output<\/h3>\n\n<pre><code>`php\n<\/code><\/pre>\n\n<p>add_filter( 'ranklite_breadcrumb_trail', function( $trail ) {\n    \/\/ $trail is an array of arrays like [ 'name' =&gt; 'Blog', 'url' =&gt; 'https:\/\/example.com\/blog\/' ].\n    return $trail;\n} );\n    `<\/p>\n\n<h3>Programmatic redirect registration<\/h3>\n\n<pre><code>`php\n<\/code><\/pre>\n\n<p>do_action( 'ranklite\/register_redirect', '\/old-path', '\/new-path', 301 );\n    `<\/p>\n\n<p>See inline docs for more hooks and parameters.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to <code>\/wp-content\/plugins\/ranklite\/<\/code> or install it from <strong>Plugins \u2192 Add New<\/strong>.<\/li>\n<li>Activate <strong>RankLite<\/strong>.<\/li>\n<li>Go to <strong>Settings \u2192 RankLite<\/strong> to configure Titles, Social, Indexing, Sitemaps, Schema, and Tools.<\/li>\n<li>Optional: Add your GA4\/GTAG or GTM container ID in <strong>Analytics<\/strong>.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20the%20plugin%20collect%20any%20personal%20data%3F\"><h3>Does the plugin collect any personal data?<\/h3><\/dt>\n<dd><p>No. RankLite does not send data to external servers and does not implement telemetry. See the Privacy section.<\/p><\/dd>\n<dt id=\"will%20it%20work%20with%20caching%20plugins%3F\"><h3>Will it work with caching plugins?<\/h3><\/dt>\n<dd><p>Yes. RankLite only outputs meta\/schema\/headers and a dynamic sitemap. Everything plays well with full-page caching.<\/p><\/dd>\n<dt id=\"can%20i%20noindex%20specific%20content%3F\"><h3>Can I noindex specific content?<\/h3><\/dt>\n<dd><p>Yes. Use the global defaults in <strong>Settings \u2192 RankLite \u2192 Indexing<\/strong>, and override per post\/page inside the meta box.<\/p><\/dd>\n<dt id=\"does%20it%20write%20to%20robots.txt%20on%20disk%3F\"><h3>Does it write to robots.txt on disk?<\/h3><\/dt>\n<dd><p>No. RankLite uses the <code>robots_txt<\/code> filter to serve a virtual robots.txt.<\/p><\/dd>\n<dt id=\"how%20do%20i%20remove%20all%20plugin%20data%20on%20uninstall%3F\"><h3>How do I remove all plugin data on uninstall?<\/h3><\/dt>\n<dd><p>In <strong>Settings \u2192 RankLite \u2192 Tools<\/strong>, enable <strong>\u201cWipe all data on uninstall\u201d<\/strong>. When checked, RankLite deletes its options and (optionally) RankLite post\/term meta upon uninstall.<\/p><\/dd>\n<dt id=\"does%20ranklite%20ping%20google%20and%20bing%20when%20sitemaps%20change%3F\"><h3>Does RankLite ping Google and Bing when sitemaps change?<\/h3><\/dt>\n<dd><p>Yes. When sitemaps are enabled, RankLite will ping Google and Bing when content changes, using short timeouts and safe throttling so it doesn\u2019t slow down your site.<\/p><\/dd>\n<dt id=\"is%20woocommerce%20supported%3F\"><h3>Is WooCommerce supported?<\/h3><\/dt>\n<dd><p>Yes\u2014RankLite works alongside WooCommerce. You can set global defaults and then override titles\/meta on individual products as needed.<\/p><\/dd>\n<dt id=\"is%20there%20a%20pro%20version%3F\"><h3>Is there a Pro version?<\/h3><\/dt>\n<dd><p>Yes, offered separately. The free plugin is fully usable by itself. The Pro add-on adds AI-assisted writing features, advanced schema\/sitemaps, a 404 monitor, and auto-redirects.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Fix: Sitemap rewrites\/router initialization issue on some installs.<\/li>\n<li>Add: Optional category and tags sitemap support.<\/li>\n<li>Fix: Cookie consent banner now closes correctly on accept\/reject\/manage.<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<p>Compatibility and security hardening: improved URL\/path handling, safer redirect sanitization, removed cross-hook output buffering, and form handling now reads only required fields.<\/p>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Security hardening: sanitize\/validate inputs in admin handlers and term\/meta saves.<\/li>\n<li>Fix: close output buffers properly for schema exclusivity.<\/li>\n<li>Fix: harden settings import validation.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Code cleanup and compatibility improvements based on WordPress.org review.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial public release.<\/li>\n<li>Titles &amp; meta with counters and fallbacks.<\/li>\n<li>XML sitemaps with pretty <code>\/sitemap.xml<\/code>, fallback routes, and Google\/Bing pings.<\/li>\n<li>Website\/Article\/Breadcrumbs + FAQ\/How-to schema (basic, JSON-LD).<\/li>\n<li>Open Graph\/Twitter Cards, breadcrumbs helper, manual redirects, analytics\/GTM helpers.<\/li>\n<li>Tools screen with wipe-on-uninstall option and uninstall cleanup logic.<\/li>\n<\/ul>","raw_excerpt":"Fast, clean SEO: titles &amp; meta, Open Graph\/Twitter Cards, JSON-LD schema, and XML sitemaps with Google\/Bing pings. No bloat, no tracking.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/kin.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/260293","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kin.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/kin.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/kin.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=260293"}],"author":[{"embeddable":true,"href":"https:\/\/kin.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/ranklite"}],"wp:attachment":[{"href":"https:\/\/kin.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=260293"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/kin.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=260293"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/kin.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=260293"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/kin.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=260293"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/kin.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=260293"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/kin.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=260293"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}