{"id":248749,"date":"2025-08-29T07:58:22","date_gmt":"2025-08-29T07:58:22","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/worddown\/"},"modified":"2026-04-14T14:02:54","modified_gmt":"2026-04-14T14:02:54","slug":"worddown","status":"publish","type":"plugin","link":"https:\/\/te.wordpress.org\/plugins\/worddown\/","author":23259181,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.1.4","stable_tag":"1.1.4","tested":"6.9.4","requires":"5.0","requires_php":"8.1","requires_plugins":null,"header_name":"Worddown","header_author":"Adam Alexandersson","header_description":"WordPress plugin that exports pages or posts to a markdown files for AI chatbots","assets_banners_color":"80acd4","last_updated":"2026-04-14 14:02:54","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":20,"downloads":932,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.1":{"tag":"1.1.1","author":"adamalexandersson","date":"2025-08-29 08:02:35"},"1.1.2":{"tag":"1.1.2","author":"adamalexandersson","date":"2025-12-01 10:21:08"},"1.1.3":{"tag":"1.1.3","author":"adamalexandersson","date":"2026-04-14 14:00:57"},"1.1.4":{"tag":"1.1.4","author":"adamalexandersson","date":"2026-04-14 14:02:54"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-256x256.jpg":{"filename":"icon-256x256.jpg","revision":3352515,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.jpg":{"filename":"banner-1544x500.jpg","revision":3352515,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.jpg":{"filename":"banner-772x250.jpg","revision":3352515,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.1.1","1.1.2","1.1.3","1.1.4"],"block_files":[],"assets_screenshots":[],"screenshots":[],"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[2353,2364,529,1859,4608],"plugin_category":[59],"plugin_contributors":[241340],"plugin_business_model":[],"class_list":["post-248749","plugin","type-plugin","status-publish","hentry","plugin_tags-ai","plugin_tags-chatbot","plugin_tags-content","plugin_tags-export","plugin_tags-markdown","plugin_category-utilities-and-tools","plugin_contributors-adamalexandersson","plugin_committers-adamalexandersson"],"banners":{"banner":"https:\/\/ps.w.org\/worddown\/assets\/banner-772x250.jpg?rev=3352515","banner_2x":"https:\/\/ps.w.org\/worddown\/assets\/banner-1544x500.jpg?rev=3352515","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/worddown\/assets\/icon-256x256.jpg?rev=3352515","icon_2x":"https:\/\/ps.w.org\/worddown\/assets\/icon-256x256.jpg?rev=3352515","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Worddown is a powerful WordPress plugin that enables you to export your pages and posts to markdown files, making them perfect for integration with AI chatbots and other markdown-based systems.<\/p>\n\n<h4>Key Features<\/h4>\n\n<ul>\n<li>Export pages and posts to markdown files<\/li>\n<li>Support for custom page builders (ACF Flexible Content, Elementor, etc.)<\/li>\n<li>REST API endpoints for programmatic access<\/li>\n<li>WP-CLI commands for automation<\/li>\n<li>Multilingual support<\/li>\n<li>Background export mode for large sites<\/li>\n<li>Customizable HTML content filters<\/li>\n<\/ul>\n\n<h4>Export Methods<\/h4>\n\n<ol>\n<li>WordPress Admin Dashboard<\/li>\n<li>WP-CLI Commands<\/li>\n<li>REST API Endpoints<\/li>\n<\/ol>\n\n<h4>WP-CLI Support<\/h4>\n\n<p>Export your content directly from the command line:<\/p>\n\n<pre><code>wp worddown export\n<\/code><\/pre>\n\n<p>For large sites, use background mode:<\/p>\n\n<pre><code>wp worddown export --background\n<\/code><\/pre>\n\n<h4>REST API<\/h4>\n\n<p>Access export functionality programmatically through REST API endpoints:<\/p>\n\n<ul>\n<li>GET \/wp-json\/worddown\/v1\/files - List all exported markdown files<\/li>\n<li>GET \/wp-json\/worddown\/v1\/files\/{post_id} - Get specific file content<\/li>\n<li>POST \/wp-json\/worddown\/v1\/export - Trigger export<\/li>\n<\/ul>\n\n<h4>Custom HTML Content Filters<\/h4>\n\n<p>Customize your markdown output using WordPress filters:<\/p>\n\n<pre><code>add_filter('worddown_custom_html_content', function($content, $post_id, $post_type) {\n    if ($post_type === 'page') {\n        $content .= '&lt;div&gt;My custom HTML for page ' . $post_id . '&lt;\/div&gt;';\n    }\n    return $content;\n}, 10, 3);\n<\/code><\/pre>\n\n<h4>Available Translations<\/h4>\n\n<ul>\n<li>English<\/li>\n<li>Swedish (sv_SE)<\/li>\n<\/ul>\n\n<h3>Development<\/h3>\n\n<p>For development instructions and advanced usage, please visit the <a href=\"https:\/\/github.com\/adamalexandersson\/worddown\">plugin repository<\/a>.<\/p>\n\n<h4>Build Process<\/h4>\n\n<p>The plugin uses Vite for asset compilation. Development requirements:<\/p>\n\n<ul>\n<li>Node.js 16.0 or higher<\/li>\n<li>npm 8.0 or higher<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin files to the <code>\/wp-content\/plugins\/worddown<\/code> directory, or install the plugin through the WordPress plugins screen directly.<\/li>\n<li>Activate the plugin through the 'Plugins' screen in WordPress<\/li>\n<li>Configure the plugin settings through the 'Worddown' menu item in the WordPress admin panel<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"can%20i%20use%20this%20with%20my%20custom%20page%20builder%3F\"><h3>Can I use this with my custom page builder?<\/h3><\/dt>\n<dd><p>Yes! Worddown provides filters that allow you to inject custom HTML content from any page builder before the markdown conversion process.<\/p><\/dd>\n<dt id=\"does%20it%20support%20multisite%3F\"><h3>Does it support multisite?<\/h3><\/dt>\n<dd><p>Yes, Worddown works with WordPress multisite installations. You can use the --url parameter with WP-CLI commands to target specific subsites.<\/p><\/dd>\n<dt id=\"how%20do%20i%20handle%20large%20exports%3F\"><h3>How do I handle large exports?<\/h3><\/dt>\n<dd><p>For large sites, we recommend using either the background mode via WP-CLI (<code>wp worddown export --background<\/code>) or the REST API with the background parameter enabled.<\/p><\/dd>\n<dt id=\"how%20do%20i%20update%20translations%20or%20fix%20missing%20strings%3F\"><h3>How do I update translations or fix missing strings?<\/h3><\/dt>\n<dd><p>Translations for plugins hosted on WordPress.org are delivered as <strong>language packs<\/strong> (files under <code>wp-content\/languages\/plugins\/<\/code>). WordPress checks for newer packs when you check for updates.<\/p>\n\n<ul>\n<li><strong>Dashboard:<\/strong> Go to <em>Dashboard \u2192 Updates<\/em> and use <strong>Update translations<\/strong> (when WordPress offers it), or update plugins\/themes and let WordPress refresh translations in the same flow.<\/li>\n<li><strong>WP-CLI:<\/strong> Run <code>wp language plugin update worddown<\/code> (or <code>wp language core update<\/code> to refresh all language data).<\/li>\n<li><strong>Automatic updates:<\/strong> By default, WordPress can install translation updates in the background (<code>WP_AUTO_UPDATE_TRANSLATION<\/code> is true unless your host disables it).<\/li>\n<\/ul>\n\n<p>New or changed strings appear in language packs after translators update them on <a href=\"https:\/\/translate.wordpress.org\/\">translate.wordpress.org<\/a>. You cannot force that from inside the plugin; releasing a new plugin version makes new strings available for translators, and updated <code>.mo<\/code> files reach sites through the normal translation update process.<\/p>\n\n<p>If you use <strong>Loco Translate<\/strong> or placed a <strong>custom<\/strong> <code>worddown-*.mo<\/code> in <code>wp-content\/languages\/plugins\/<\/code>, that file overrides the pack until you <strong>re-sync<\/strong> in Loco or <strong>delete<\/strong> the override so WordPress can download the current pack again.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<p>= 1.1.4\n* Added configurable meta data and optional author metadata: Allow per-field toggles for standard YAML keys and an optional nested author block (username, display name, email, roles). Add field_group support in settings UI; merge defaults for REST; keep schema in sync with setConfig.<\/p>\n\n<p>= 1.1.3\n* Add before\/after export hooks to adapter. The Modularity adapter now uses these hooks for pre\/post processing, reducing coupling and keeping the core exporter generic.<\/p>\n\n<p>= 1.1.2\n* Fixes and improvements\n* Added testet up to Wordpress 6.9<\/p>\n\n<p>= 1.1.1\n* Fixes and improvements<\/p>\n\n<p>= 1.1.0\n* Implement atomic export using pending directory\n* General improvements<\/p>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<\/ul>","raw_excerpt":"Export WordPress pages and posts to markdown files for AI chatbots with support for custom page builders and multilingual content.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/248749","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=248749"}],"author":[{"embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/adamalexandersson"}],"wp:attachment":[{"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=248749"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=248749"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=248749"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=248749"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=248749"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=248749"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}