{"id":361923,"date":"2026-09-01T20:41:48","date_gmt":"2026-09-01T20:41:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/wwb-seo-master\/"},"modified":"2026-09-03T08:02:44","modified_gmt":"2026-09-03T08:02:44","slug":"wwb-seo-master","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/wwb-seo-master\/","author":23329786,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"5.6.2","stable_tag":"5.6.2","tested":"7.1","requires":"6.0","requires_php":"8.0","requires_plugins":null,"header_name":"WWB SEO Master","header_author":"Wild Web Builder","header_description":"International, modular and privacy-first WordPress SEO.","assets_banners_color":"4713bb","last_updated":"2026-09-03 08:02:44","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/wildwebbuilder.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":72,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"5.6.2":{"tag":"5.6.2","author":"aleksa64","date":"2026-09-03 08:02:44","revision":3679283}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3676836,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3676836,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3676836,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3676836,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["5.6.2"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[127657,726,1117,186,1557],"plugin_category":[55],"plugin_contributors":[278709],"plugin_business_model":[],"class_list":["post-361923","plugin","type-plugin","status-publish","hentry","plugin_tags-content-analysis","plugin_tags-redirects","plugin_tags-schema","plugin_tags-seo","plugin_tags-sitemap","plugin_category-seo-and-marketing","plugin_contributors-aleksa64","plugin_committers-aleksa64"],"banners":{"banner":"https:\/\/ps.w.org\/wwb-seo-master\/assets\/banner-772x250.png?rev=3676836","banner_2x":"https:\/\/ps.w.org\/wwb-seo-master\/assets\/banner-1544x500.png?rev=3676836","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/wwb-seo-master\/assets\/icon-128x128.png?rev=3676836","icon_2x":"https:\/\/ps.w.org\/wwb-seo-master\/assets\/icon-256x256.png?rev=3676836","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>WWB SEO Master is developed by [Wild Web Builder] Aleksander Auset B\u00e6kkelund (https:\/\/www.wildwebbuilder.com\/).\nVisit our website for more information about our WordPress tools and services like WebDesign and Plugin automation.<\/p>\n\n<p>WWB SEO Master provides technical and editorial SEO tools without advertising,\nlicense checks or telemetry:<\/p>\n\n<ul>\n<li>SEO titles, descriptions, canonical URLs and robots directives.<\/li>\n<li>Open Graph and X metadata with featured-image fallback.<\/li>\n<li>Connected JSON-LD graphs and a guided schema builder.<\/li>\n<li>WordPress core XML sitemap integration and robots.txt controls.<\/li>\n<li>Internal redirects, automatic permalink-change redirects and loop protection.<\/li>\n<li>Privacy-safe 404 monitoring that discards query strings.<\/li>\n<li>Cached multilingual content audits and batched technical scans.<\/li>\n<li>Taxonomy SEO, breadcrumbs, internal-link suggestions and <code>\/llms.txt<\/code>.<\/li>\n<li>Migration from WWB SEO V3, Yoast SEO, Rank Math, SEOPress and AIOSEO.<\/li>\n<li>Optional read-only Google Search Console reports and URL inspection.<\/li>\n<li>Optional AI Optimization Assistant and manual backlink candidate research.<\/li>\n<\/ul>\n\n<p>AI features are disabled by default and run only after an authorized user clicks\nthe relevant action. WordPress 7.0 or newer uses the built-in, provider-agnostic\nWordPress AI Client when a compatible connector supports the request. On older\nWordPress versions, or when the native client cannot support the request, an\nadministrator can configure the backward-compatible OpenAI fallback. The plugin\nstill requires only WordPress 6.0 and does not require WordPress 7.0.<\/p>\n\n<p>AI output is sanitized, bounded and review-only. It is never published, posted,\nemailed or adopted automatically. Deactivation preserves all data. Deletion also\npreserves data unless permanent cleanup is explicitly enabled in Settings.<\/p>\n\n<h3>External Services<\/h3>\n\n<p>This plugin has no licensing, update-check, advertising, analytics or telemetry\nservice. The following optional services are used only when a site administrator\nconfigures and invokes their associated features.<\/p>\n\n<h4>WordPress AI Client and configured AI provider<\/h4>\n\n<p>On WordPress 7.0 or newer, the plugin first calls <code>wp_ai_client_prompt()<\/code>. The\nWordPress AI Client selects a compatible AI provider from connectors installed\nand configured by the site owner. WWB SEO does not install a connector and does\nnot control which provider the owner selects.<\/p>\n\n<p>When an authorized editor manually requests page optimization, the prompt may\ncontain the site name, locale, saved page title, saved SEO\/social metadata,\nschema type and a bounded plain-text copy of the saved page content. When an\nadministrator manually requests backlink candidates, it may contain the site\nname and URL, business goal, audience, location and up to eight recent public\npage titles and URLs. That second request also asks a capable provider to use web\nsearch. No prompt is sent automatically or in the background.<\/p>\n\n<p>Data handling, retention, billing, terms and privacy are determined by the AI\nconnector and provider configured by the site owner. See the\n<a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/wp_ai_client_prompt\/\">WordPress AI Client documentation<\/a>\nand the selected connector\/provider documentation before enabling this feature.<\/p>\n\n<h4>OpenAI fallback<\/h4>\n\n<p>The optional backward-compatible fallback sends manual AI requests to\n    https:\/\/api.openai.com\/v1\/responses. It is used only when the WordPress AI\nClient is unavailable or cannot support the requested capability and a site\nadministrator has saved an OpenAI API key.<\/p>\n\n<p>Page-optimization and backlink-candidate requests contain the same bounded data\ndescribed above. A pseudonymous HMAC identifier derived from the current local\nuser ID can also be sent for abuse prevention; it is not the WordPress username,\nemail address or raw user ID. Requests set <code>store: false<\/code>. Backlink research may\nenable OpenAI web search. The encrypted API key remains on the WordPress site and\nis transmitted only in the authorization header for the request. Nothing is sent\nuntil an authorized user explicitly runs an AI action.<\/p>\n\n<p>OpenAI API use is subject to OpenAI's\n<a href=\"https:\/\/openai.com\/policies\/terms-of-use\/\">terms<\/a> and\n<a href=\"https:\/\/openai.com\/policies\/privacy-policy\/\">privacy policy<\/a>. API usage may be\nbilled to the key owner.<\/p>\n\n<h4>Google OAuth and Search Console<\/h4>\n\n<p>The optional Search Console module communicates with these Google endpoints:<\/p>\n\n<ul>\n<li><code>https:\/\/accounts.google.com\/o\/oauth2\/v2\/auth<\/code> for administrator-initiated OAuth consent.<\/li>\n<li><code>https:\/\/oauth2.googleapis.com\/token<\/code> to exchange and refresh OAuth tokens.<\/li>\n<li><code>https:\/\/www.googleapis.com\/webmasters\/v3\/<\/code> for verified properties and read-only performance reports.<\/li>\n<li><code>https:\/\/searchconsole.googleapis.com\/v1\/urlInspection\/index:inspect<\/code> for administrator-requested URL inspection.<\/li>\n<\/ul>\n\n<p>The OAuth client ID, authorization code, encrypted client secret and encrypted\ntokens are used for authentication. Selected property, date ranges, report\ndimensions and administrator-entered inspection URLs are sent as needed. The\nmodule requests the read-only <code>webmasters.readonly<\/code> scope. Performance results\nare cached locally for one hour and inspection results for six hours. Disconnect\nremoves stored tokens and the selected property. Google use is subject to the\n<a href=\"https:\/\/policies.google.com\/terms\">Google Terms of Service<\/a> and\n<a href=\"https:\/\/policies.google.com\/privacy\">Google Privacy Policy<\/a>.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin ZIP in Plugins &gt; Add New &gt; Upload Plugin.<\/li>\n<li>Activate WWB SEO Master.<\/li>\n<li>Open WWB SEO &gt; Settings and enable only the modules you need.<\/li>\n<li>Set the public identity used by the schema graph.<\/li>\n<li>Edit content or public taxonomy terms to configure SEO fields.<\/li>\n<li>Back up the site before using migration or permanent uninstall cleanup.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"is%20a%20license%20key%20required%3F\"><h3>Is a license key required?<\/h3><\/dt>\n<dd><p>No. There is no license-key system, advertising or telemetry.<\/p><\/dd>\n<dt id=\"is%20wordpress%207.0%20required%3F\"><h3>Is WordPress 7.0 required?<\/h3><\/dt>\n<dd><p>No. The minimum remains WordPress 6.0. WordPress 7.0 or newer can use the native\nAI Client; older versions can use the optional direct OpenAI fallback.<\/p><\/dd>\n<dt id=\"does%20ai%20publish%20or%20change%20content%20automatically%3F\"><h3>Does AI publish or change content automatically?<\/h3><\/dt>\n<dd><p>No. AI runs only on an authorized manual action. Suggestions must be selected,\nreviewed and saved by the user. Backlink candidates also require manual adoption\nand outreach.<\/p><\/dd>\n<dt id=\"does%20deactivation%20delete%20seo%20data%3F\"><h3>Does deactivation delete SEO data?<\/h3><\/dt>\n<dd><p>No. Deactivation never deletes data. Optional permanent cleanup applies only\nwhen the plugin itself is deleted and the setting was enabled beforehand.<\/p><\/dd>\n<dt id=\"does%20it%20replace%20the%20wordpress%20sitemap%3F\"><h3>Does it replace the WordPress sitemap?<\/h3><\/dt>\n<dd><p>It controls and extends the sitemap system built into WordPress. The sitemap\nindex remains available at <code>\/wp-sitemap.xml<\/code>.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>5.6.2<\/h4>\n\n<ul>\n<li>Moved settings-page CSS to a local stylesheet loaded with <code>admin_enqueue_scripts<\/code>.<\/li>\n<li>Passed Smart Finisher data through <code>wp_add_inline_script()<\/code> instead of printing a script element in admin markup.<\/li>\n<li>Changed the answer-helper shortcodes to the unique <code>wwbseo_answer<\/code>, <code>wwbseo_faq<\/code> and <code>wwbseo_howto<\/code> names before the public directory release.<\/li>\n<li>Removed the global PHP compatibility notice and kept the permalink-change confirmation inside the relevant post-editing form.<\/li>\n<li>Corrected the WordPress.org contributor username and replaced the short internal namespace and constant prefixes with unique plugin-specific names.<\/li>\n<li>Retained WordPress AI Client priority with the documented OpenAI compatibility fallback for older WordPress versions.<\/li>\n<\/ul>\n\n<h4>5.6.1<\/h4>\n\n<ul>\n<li>Added a persistent, accessible saved, unsaved, saving and save-failed status inside the page SEO panel.<\/li>\n<li>Added reliable save confirmation for both the classic editor and block editor workflows.<\/li>\n<li>Clarified that Smart Finisher and AI actions add recommendations to the editor but do not store them until WordPress confirms Update or Publish.<\/li>\n<li>Highlighted modified SEO and schema fields and guided users to the WordPress save button.<\/li>\n<li>Completed the four-step AI progress indicator only after a successful WordPress save.<\/li>\n<li>Added selection counts, duplicate-click protection, busy states and clearer undo and restore feedback.<\/li>\n<\/ul>\n\n<h4>5.6.0<\/h4>\n\n<ul>\n<li>Added WordPress AI Client support with capability checks, structured output, model preference, token limits and optional web search.<\/li>\n<li>Kept a safe direct OpenAI fallback for WordPress 6.x and unsupported native requests without making WordPress 7.0 a requirement.<\/li>\n<li>Prevented duplicate provider calls when a native AI request fails after execution starts.<\/li>\n<li>Hardened external requests with safe URL validation, disabled redirects and bounded responses.<\/li>\n<li>Improved OAuth property-boundary validation, AI lock cleanup and provider-aware settings guidance.<\/li>\n<li>Completed uninstall cleanup for Smart Finisher snapshots and removed unused custom update metadata.<\/li>\n<li>Expanded External Services, privacy, compatibility and data-flow documentation.<\/li>\n<li>Updated the translation template, compatibility declarations and release checks.<\/li>\n<\/ul>\n\n<h4>5.5.1<\/h4>\n\n<ul>\n<li>Added manual AI web search for relevant backlink and recognition candidates.<\/li>\n<li>Added reviewable candidate details, selection controls and strict URL\/output validation.<\/li>\n<li>Kept discovery manual with no automatic outreach or posting.<\/li>\n<\/ul>\n\n<h4>5.5.0<\/h4>\n\n<ul>\n<li>Added the local Backlink Center planning workflow and quality scoring.<\/li>\n<\/ul>\n\n<h4>5.4.1<\/h4>\n\n<ul>\n<li>Protected populated or changed metadata from unintended AI overwrite.<\/li>\n<li>Unified title and description limits across the editor, server and AI output.<\/li>\n<\/ul>\n\n<h4>5.0.0<\/h4>\n\n<ul>\n<li>Rebuilt the plugin around consistent indexability, connected entities, crawler controls and visible answer helpers.<\/li>\n<\/ul>","raw_excerpt":"Fast, modular and privacy-first WordPress SEO with optional, manual AI assistance.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/361923","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=361923"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/aleksa64"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=361923"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=361923"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=361923"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=361923"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=361923"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=361923"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}