{"id":272018,"date":"2026-01-16T18:49:58","date_gmt":"2026-01-16T18:49:58","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/llm-friendly\/"},"modified":"2026-01-16T19:14:09","modified_gmt":"2026-01-16T19:14:09","slug":"llm-friendly","status":"publish","type":"plugin","link":"https:\/\/twd.wordpress.org\/plugins\/llm-friendly\/","author":11585502,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"0.1.0","stable_tag":"0.1.0","tested":"6.9.4","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"LLM Friendly","header_author":"Pavel Sherer","header_description":"Adds llms.txt and Markdown endpoints to WordPress for LLM-friendly content access.","assets_banners_color":"cccccc","last_updated":"2026-01-16 19:14:09","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/github.com\/sherer-pro\/llm-friendly","header_author_uri":"https:\/\/sherer.pro","rating":0,"author_block_rating":0,"active_installs":10,"downloads":133,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq"],"tags":{"0.1.0":{"tag":"0.1.0","author":"Skreep","date":"2026-01-16 19:14:09"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon.svg":{"filename":"icon.svg","revision":3441210,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3441210,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3441210,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{"blueprint.json":{"filename":"blueprint.json","revision":3441219,"resolution":false,"location":"assets","locale":"","contents":"{\"$schema\":\"https:\\\/\\\/playground.wordpress.net\\\/blueprint-schema.json\",\"meta\":{\"title\":\"LLM Friendly\",\"description\":\"Adds llms.txt and Markdown endpoints to WordPress for LLM-friendly content access.\",\"author\":\"Pavel Sherer\",\"categories\":[\"plugins\",\"editor\"]},\"preferredVersions\":{\"php\":\"7.4\",\"wp\":\"6.0\"},\"login\":true,\"siteOptions\":{\"blogname\":\"LLM Friendly demo\"},\"landingPage\":\"\\\/wp-admin\\\/options-general.php?page=llm-friendly\",\"steps\":[{\"step\":\"setSiteOptions\",\"options\":{\"blogname\":\"LLM Friendly demo\"}},{\"step\":\"installPlugin\",\"pluginData\":{\"resource\":\"wordpress.org\\\/plugins\",\"slug\":\"llm-friendly\"},\"options\":{\"activate\":true}}]}"}},"all_blocks":[],"tagged_versions":["0.1.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3441210,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3441210,"resolution":"2","location":"assets","locale":""}},"screenshots":{"1":"Settings page (General)","2":"Settings page (llms.txt, Site Meta overrides, Maintenance)"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[2353,1859,226124,244604,4608],"plugin_category":[59],"plugin_contributors":[251552],"plugin_business_model":[],"class_list":["post-272018","plugin","type-plugin","status-publish","hentry","plugin_tags-ai","plugin_tags-export","plugin_tags-llm","plugin_tags-llms-txt","plugin_tags-markdown","plugin_category-utilities-and-tools","plugin_contributors-skreep","plugin_committers-skreep"],"banners":{"banner":"https:\/\/ps.w.org\/llm-friendly\/assets\/banner-772x250.png?rev=3441210","banner_2x":"https:\/\/ps.w.org\/llm-friendly\/assets\/banner-1544x500.png?rev=3441210","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/llm-friendly\/assets\/icon.svg?rev=3441210","icon":"https:\/\/ps.w.org\/llm-friendly\/assets\/icon.svg?rev=3441210","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/llm-friendly\/assets\/screenshot-1.png?rev=3441210","caption":"Settings page (General)"},{"src":"https:\/\/ps.w.org\/llm-friendly\/assets\/screenshot-2.png?rev=3441210","caption":"Settings page (llms.txt, Site Meta overrides, Maintenance)"}],"raw_content":"<!--section=description-->\n<p>LLM Friendly adds two capabilities to your WordPress site:<\/p>\n\n<p>1) \/llms.txt\nAn LLM-friendly index of the website with main links and a list of latest items per post type. You can exclude individual entries from the feed via Settings \u2192 LLM Friendly \u2192 llms.txt \u2192 \u201cExcluded items\u201d.<\/p>\n\n<p>2) Markdown exports\nFor selected post types, the plugin exposes .md endpoints under:\n{base}\/{post_type}\/{path}.md\nEntries can override their Markdown body via the \u201cMarkdown override\u201d sidebar panel (or Classic Editor metabox) and can also be excluded from export through the same settings page.<\/p>\n\n<p>This is useful for LLMs, indexing bots, and users who prefer plain text.\nYou can opt in to excerpts in llms.txt via <code>llms_show_excerpt<\/code>, and you can send <code>X-Robots-Tag: noindex, nofollow<\/code> for Markdown exports via <code>md_send_noindex<\/code> if you want Markdown-only consumers without search engine indexing.\nIf the automatic Markdown conversion does not fit a post, use the \u201cMarkdown override\u201d sidebar panel (Gutenberg) or the Classic Editor metabox to provide a custom Markdown or block-based replacement.<\/p>\n\n<h4>Key features<\/h4>\n\n<ul>\n<li>llms.txt endpoint with cached generation, optional excerpts, a configurable custom Markdown block, and a per-post exclusion list.<\/li>\n<li>Markdown exports for selected post types with Gutenberg-to-Markdown conversion, per-post Markdown overrides (sidebar panel\/metabox), and a per-post exclusion list shared with llms.txt.<\/li>\n<li>Configurable base path for exports (e.g. \"llm\") and per-post-type enable\/disable toggles; changing the base path requires flushing rewrites.<\/li>\n<li>Manual or automatic regeneration of the cached llms.txt with ETag\/Last-Modified headers.<\/li>\n<li>Optional X-Robots-Tag: noindex, nofollow for both \/llms.txt and Markdown exports; the Markdown header is controlled by <code>md_send_noindex<\/code>.<\/li>\n<li>Toggle excerpts in llms.txt via <code>llms_show_excerpt<\/code> to add one-line summaries under each item.<\/li>\n<li>Optional site title\/description overrides plus a sitemap URL field for the generated llms.txt.<\/li>\n<\/ul>\n\n<h4>Requirements<\/h4>\n\n<ul>\n<li>WordPress 6.0+<\/li>\n<li>PHP 7.4+<\/li>\n<\/ul>\n\n<p>If requirements are not met, the plugin displays an admin notice and does not run.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin to the \/wp-content\/plugins\/ directory, or install it through the WordPress plugins screen.<\/li>\n<li>Activate the plugin through the 'Plugins' screen in WordPress.<\/li>\n<li>Go to Settings \u2192 LLM Friendly.<\/li>\n<li>Enable llms.txt and\/or Markdown exports, choose post types, configure base path (optional).<\/li>\n<li>Save changes.<\/li>\n<li>If you changed the base path or endpoints, re-save Permalinks if your server has custom rewrite rules.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"where%20is%20llms.txt%20stored%3F\"><h3>Where is llms.txt stored?<\/h3><\/dt>\n<dd><p>The plugin serves llms.txt dynamically via WordPress. It is not a physical file on disk.<\/p><\/dd>\n<dt id=\"markdown%20exports%20return%20404.%20why%3F\"><h3>Markdown exports return 404. Why?<\/h3><\/dt>\n<dd><p>Most often this is a rewrite or web-server routing issue. If you run Nginx in front of Apache, make sure .md requests are routed to WordPress (not handled as static files).\nWhen you change the base path, flush permalinks and confirm that <code>.md<\/code> and <code>\/llms.txt<\/code> are not short-circuited by static file rules.<\/p><\/dd>\n<dt id=\"how%20do%20i%20keep%20markdown%20out%20of%20search%20results%3F\"><h3>How do I keep Markdown out of search results?<\/h3><\/dt>\n<dd><p>Enable the \u201cSend X-Robots-Tag: noindex, nofollow for Markdown\u201d option (stored as <code>md_send_noindex<\/code>) to emit the header on all Markdown responses.<\/p><\/dd>\n<dt id=\"can%20i%20ship%20a%20custom%20markdown%20body%20or%20exclude%20a%20single%20item%3F\"><h3>Can I ship a custom Markdown body or exclude a single item?<\/h3><\/dt>\n<dd><p>Yes. Open the post in Gutenberg and use the \u201cMarkdown override\u201d sidebar panel; Classic Editor users get a \u201cMarkdown override (LLM Friendly)\u201d metabox. The override accepts plain Markdown or block markup. If you want to hide a specific entry from llms.txt and Markdown exports, go to Settings \u2192 LLM Friendly \u2192 llms.txt \u2192 \u201cExcluded items\u201d, search by title, and add it to the exclusion list.<\/p><\/dd>\n\n<\/dl>","raw_excerpt":"Expose llms.txt and Markdown versions of posts\/pages to make your site easier for LLMs to navigate and consume.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/272018","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=272018"}],"author":[{"embeddable":true,"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/skreep"}],"wp:attachment":[{"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=272018"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=272018"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=272018"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=272018"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=272018"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=272018"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}