{"id":319174,"date":"2026-06-08T14:51:48","date_gmt":"2026-06-08T14:51:48","guid":{"rendered":"https:\/\/es.wordpress.org\/plugins\/fardo-ai-visibility\/"},"modified":"2026-06-08T14:51:19","modified_gmt":"2026-06-08T14:51:19","slug":"fardo-ai-visibility","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/fardo-ai-visibility\/","author":23507067,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.2.0","stable_tag":"0.2.0","tested":"7.0","requires":"6.4","requires_php":"8.1","requires_plugins":null,"header_name":"Fardo AI Visibility","header_author":"Fardo","header_description":"Hace tu sitio legible por crawlers de IA (llms.txt, JSON-LD, bot tracking) y se conecta con la plataforma Fardo para mostrar tu AI Score y ranking competitivo.","assets_banners_color":"","last_updated":"2026-06-08 14:51:19","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/platform-fardo.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":32,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.2.0":{"tag":"0.2.0","author":"heyfardo","date":"2026-06-08 14:51:19"}},"upgrade_notice":{"0.2.0":"<p>The ranking endpoint now uses your OAuth connection instead of a shared API key. If you upgrade and had a Fardo account connected, no action is needed.<\/p>","0.1.0":"<p>First public release.<\/p>"},"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.2.0"],"block_files":[],"assets_screenshots":{"screenshot-4.png":{"filename":"screenshot-4.png","revision":3564925,"resolution":"4","location":"plugin","width":1576,"height":777},"screenshot-1.png":{"filename":"screenshot-1.png","revision":3564925,"resolution":"1","location":"plugin","width":1655,"height":842},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3564925,"resolution":"2","location":"plugin","width":869,"height":792},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3564925,"resolution":"3","location":"plugin","width":1532,"height":974}},"screenshots":{"1":"Hub \u2014 AI Visibility Score (0\u2013100) with AEO, GEO and LLMO breakdown, plus the historical chart of your score.","2":"Rankings \u2014 your brand vs. the competitors you defined during onboarding.","3":"AI Feed \u2014 five opt-in files (llms.txt, llms-full.txt, ai-feed.jsonld, ai-overview.html, sitemap-ai.xml, robots.txt) you install on demand from wp-admin.","4":"Bot Traffic \u2014 last-30-days view of visits from 24 known AI\/LLM crawlers with sparkline trend and top URL."}},"plugin_section":[],"plugin_tags":[2353,251222,244604,1117,186],"plugin_category":[55],"plugin_contributors":[266210],"plugin_business_model":[],"class_list":["post-319174","plugin","type-plugin","status-publish","hentry","plugin_tags-ai","plugin_tags-bot-tracking","plugin_tags-llms-txt","plugin_tags-schema","plugin_tags-seo","plugin_category-seo-and-marketing","plugin_contributors-heyfardo","plugin_committers-heyfardo"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/fardo-ai-visibility.svg","icon_2x":false,"generated":true},"screenshots":[{"src":"https:\/\/ps.w.org\/fardo-ai-visibility\/trunk\/screenshot-1.png?rev=3564925","caption":"Hub \u2014 AI Visibility Score (0\u2013100) with AEO, GEO and LLMO breakdown, plus the historical chart of your score."},{"src":"https:\/\/ps.w.org\/fardo-ai-visibility\/trunk\/screenshot-2.png?rev=3564925","caption":"Rankings \u2014 your brand vs. the competitors you defined during onboarding."},{"src":"https:\/\/ps.w.org\/fardo-ai-visibility\/trunk\/screenshot-3.png?rev=3564925","caption":"AI Feed \u2014 five opt-in files (llms.txt, llms-full.txt, ai-feed.jsonld, ai-overview.html, sitemap-ai.xml, robots.txt) you install on demand from wp-admin."},{"src":"https:\/\/ps.w.org\/fardo-ai-visibility\/trunk\/screenshot-4.png?rev=3564925","caption":"Bot Traffic \u2014 last-30-days view of visits from 24 known AI\/LLM crawlers with sparkline trend and top URL."}],"raw_content":"<!--section=description-->\n<p>Fardo AI Visibility makes your WordPress site easy for AI crawlers (ChatGPT, Claude, Perplexity, Gemini, Grok, and others) to understand, and lets you monitor your brand's visibility in AI engines from inside wp-admin.<\/p>\n\n<h4>What the plugin does locally<\/h4>\n\n<ul>\n<li><strong>AI Feed (opt-in, 5 files served from your site root):<\/strong>\n\n<ul>\n<li><code>\/llms.txt<\/code> and <code>\/llms-full.txt<\/code> \u2014 short and full Markdown maps of your site for LLMs, following the <a href=\"https:\/\/llmstxt.org\">llmstxt.org<\/a> standard.<\/li>\n<li><code>\/ai-feed.jsonld<\/code> \u2014 JSON-LD feed with <code>Organization<\/code>, <code>WebSite<\/code> and an <code>ItemList<\/code> of recent content.<\/li>\n<li><code>\/ai-overview.html<\/code> \u2014 bare-HTML summary of your brand and content.<\/li>\n<li><code>\/sitemap-ai.xml<\/code> \u2014 AI-specific sitemap (home + pages + posts, ordered by modification).<\/li>\n<li><code>\/robots.txt<\/code> \u2014 extension that explicitly allows known AI crawlers and references the AI sitemap.<\/li>\n<\/ul><\/li>\n<li><strong>Bot Traffic tracking:<\/strong> detects visits from 24 known AI\/LLM crawlers (GPTBot, ClaudeBot, PerplexityBot, Google-Extended, etc.) via User-Agent and logs them to a custom table, with a sparkline view of the last 30 days inside wp-admin.<\/li>\n<li><strong>Schema.org JSON-LD:<\/strong> injects <code>Organization<\/code> and <code>WebSite<\/code> JSON-LD in the <code>&lt;head&gt;<\/code> of your front-end (toggleable).<\/li>\n<\/ul>\n\n<p>All five AI Feed files are <strong>opt-in<\/strong>: nothing is served at any public URL until you turn it on from the plugin's settings.<\/p>\n\n<h4>What the plugin does with the Fardo platform (optional, requires connecting an account)<\/h4>\n\n<p>If you choose to connect a Fardo account through the OAuth flow inside the plugin, you also get:<\/p>\n\n<ul>\n<li><strong>Hub:<\/strong> your AI Score (0\u2013100) with breakdown by AEO, GEO and LLMO, and a hero chart with the historical evolution of your score.<\/li>\n<li><strong>Rankings:<\/strong> competitive ranking by industry, plus a comparison of your brand against the competitors you defined during onboarding.<\/li>\n<li><strong>AI Feed (custom):<\/strong> regenerate the five AI Feed files with content tailored to your brand (uses AI research over your site and public sources) and edit any file inline from wp-admin.<\/li>\n<li><strong>Company configuration:<\/strong> edit the brand info (name, industry, value proposition, competitors, keywords) that Fardo uses to compute your score.<\/li>\n<\/ul>\n\n<p>Connecting an account is <strong>completely optional<\/strong>. Without an account, the plugin still serves the AI Feed and tracks bot traffic.<\/p>\n\n<h4>External services<\/h4>\n\n<p>This plugin can communicate with two external services operated by Fardo. <strong>No data leaves your site unless you trigger the connection or features that require them.<\/strong><\/p>\n\n<ul>\n<li><strong>Fardo platform<\/strong> (<code>https:\/\/platform-fardo.com<\/code>) \u2014 Used when you click \"Connect with Fardo\" in Settings (OAuth consent), when the plugin requests a new AI analysis on your behalf, or when the plugin polls the status of that analysis. Data sent: the brand information you fill in (brand name, industry, market, target audience, value proposition, competitors, keywords) and the domain of your site. Privacy policy and terms: <a href=\"https:\/\/platform-fardo.com\">https:\/\/platform-fardo.com<\/a>.<\/li>\n<li><strong>Fardo API gateway<\/strong> \u2014 Used to fetch your AI Score, the industry ranking, the hero chart, and to trigger the optional custom AI Feed generation. Authenticated requests use an OAuth access token that the plugin stores encrypted in your database and never exposes to the browser.<\/li>\n<\/ul>\n\n<p>The plugin does <strong>not<\/strong> send any data to either service until you explicitly connect an account or toggle a feature that requires the connection.<\/p>\n\n<h3>Source Code<\/h3>\n\n<p>This plugin ships with compiled admin assets (under <code>assets\/dist\/<\/code>). The full,\nuncompiled source code (React + TypeScript, built with Vite) is publicly available at:<\/p>\n\n<p>https:\/\/github.com\/heyfardo\/plugin-wordpress<\/p>\n\n<p>To build the admin assets from source:<\/p>\n\n<ol>\n<li>npm install<\/li>\n<li>npm run build<\/li>\n<\/ol>\n\n<p>The compiled output is written to <code>assets\/dist\/<\/code>.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder (<code>fardo-ai-visibility\/<\/code>) to the <code>\/wp-content\/plugins\/<\/code> directory, or install through the WordPress Plugins screen directly.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> screen in WordPress.<\/li>\n<li>Open the <strong>Fardo AI<\/strong> menu in the wp-admin sidebar.<\/li>\n<li>(Optional) Click <strong>Connect with Fardo<\/strong> in Settings to link a Fardo account and unlock the Hub, Rankings and custom AI Feed features.<\/li>\n<li>Go to the <strong>AI Feed<\/strong> tab and toggle on the files you want your site to serve publicly.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20the%20plugin%20work%20without%20a%20fardo%20account%3F\"><h3>Does the plugin work without a Fardo account?<\/h3><\/dt>\n<dd><p>Yes. The AI Feed (five files), bot traffic tracking, and Schema.org JSON-LD all work locally without connecting any account. The Hub, Rankings, hero chart, custom AI Feed generation, and company configuration require a Fardo account because they depend on data computed by the Fardo platform.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20send%20any%20data%20to%20external%20servers%20by%20default%3F\"><h3>Does the plugin send any data to external servers by default?<\/h3><\/dt>\n<dd><p>No. The plugin does not communicate with any external service until you either (1) click \"Connect with Fardo\" in Settings, or (2) trigger a feature that explicitly requires the platform (such as a new analysis or custom AI Feed generation). See the <strong>External services<\/strong> section above for the full list.<\/p><\/dd>\n<dt id=\"where%20are%20oauth%20tokens%20stored%3F\"><h3>Where are OAuth tokens stored?<\/h3><\/dt>\n<dd><p>OAuth tokens are stored encrypted (OpenSSL AES-256-CBC) in your site's <code>wp_options<\/code> table. They are never exposed to the browser or to the React admin app \u2014 only the server-side PHP code uses them when calling the Fardo gateway.<\/p><\/dd>\n<dt id=\"why%20are%20the%20ai%20feed%20files%20not%20visible%20at%20my%20site%27s%20urls%20after%20activating%20the%20plugin%3F\"><h3>Why are the AI Feed files not visible at my site's URLs after activating the plugin?<\/h3><\/dt>\n<dd><p>Because the AI Feed is <strong>opt-in<\/strong>. Go to <strong>Fardo AI \u2192 AI Feed<\/strong> and toggle the files you want your site to serve. Each file maps to its own setting flag and is served only when enabled.<\/p><\/dd>\n<dt id=\"how%20does%20the%20plugin%20detect%20ai%20bots%3F\"><h3>How does the plugin detect AI bots?<\/h3><\/dt>\n<dd><p>It matches the request's User-Agent against a curated list of 24 known AI\/LLM crawler patterns (GPTBot, ChatGPT-User, ClaudeBot, PerplexityBot, Google-Extended, Bytespider, CCBot, and others) and logs matches to a custom table.<\/p><\/dd>\n<dt id=\"what%20happens%20to%20my%20data%20when%20i%20uninstall%20the%20plugin%3F\"><h3>What happens to my data when I uninstall the plugin?<\/h3><\/dt>\n<dd><p>The plugin's <code>uninstall.php<\/code> deletes its custom database table (<code>{prefix}_fardo_bot_hits<\/code>), removes all its <code>wp_options<\/code> entries (including encrypted OAuth tokens), and clears its transients. Uninstalling does not affect any other plugin or theme data.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.2.0<\/h4>\n\n<ul>\n<li>Rankings now authenticate with the user's OAuth token instead of a shared API key. The plugin no longer requires (or accepts) any shared secret to display the industry ranking; connecting a Fardo account is enough.<\/li>\n<li>Removed the legacy <code>\/fardo\/company-config<\/code> REST route and the <code>ranking_api_key<\/code> setting (superseded by the OAuth-authenticated <code>\/company\/config<\/code> and Bearer-authenticated ranking endpoint).<\/li>\n<li>Cleaner uninstall: now also sweeps parameterized transients (ranking cache, score cache, AI Feed overrides) on plugin delete.<\/li>\n<\/ul>\n\n<h4>0.1.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<li>AI Feed: five opt-in files (<code>llms.txt<\/code>, <code>llms-full.txt<\/code>, <code>ai-feed.jsonld<\/code>, <code>ai-overview.html<\/code>, <code>robots.txt<\/code> extension, <code>sitemap-ai.xml<\/code>).<\/li>\n<li>Bot Traffic: 24-pattern AI crawler detection with sparkline view (30 days).<\/li>\n<li>Schema.org JSON-LD: <code>Organization<\/code> and <code>WebSite<\/code> injection in <code>&lt;head&gt;<\/code>.<\/li>\n<li>OAuth connection to the Fardo platform with encrypted token storage.<\/li>\n<li>Hub, Rankings, hero chart and company configuration for connected accounts.<\/li>\n<li>Inline editor and custom AI-generated content for the AI Feed (paid plans).<\/li>\n<\/ul>","raw_excerpt":"Make your WordPress site readable by AI crawlers (llms.txt, JSON-LD, bot tracking) and monitor your brand&#039;s AI visibility from wp-admin.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/319174","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=319174"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/heyfardo"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=319174"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=319174"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=319174"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=319174"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=319174"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=319174"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}