=== Khushal Content Export to CSV === Contributors: khushal1995 Tags: csv, export, posts, pages, gutenberg Requires at least: 5.8 Tested up to: 6.9 Requires PHP: 7.4 Stable tag: 1.4.1 License: GPLv2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html Export posts & pages to CSV: Gutenberg blocks, Webflow-style HTML, or plain text. Third-party; not affiliated with Webflow Inc. == Description == **Khushal Content Export to CSV** lets administrators download **published** content as CSV (or CSV + featured images in a ZIP) from the **Khushal CSV Export** screen. ZIP exports use a short-lived folder under `wp-content/uploads/khushal-content-export-to-csv/` (then removed), not the PHP system temp directory. **Features** * Post types: posts, pages, and other **public** post types with UI (attachments excluded by default). * **Post content modes:** block markup (WordPress re-import), Webflow-oriented HTML, rendered HTML, or plain text. * Columns: Post ID, type, title (or **Name** for Webflow), **slug**, content, date, author, featured image URL, paths, permalink, terms; optional Yoast / Rank Math columns. * **UTF-8 BOM** for Excel; CSV formula-injection mitigation. * **Security:** `manage_options`, `check_ajax_referer`, sanitized POST input. **Developer hooks** * `kcecsv_export_query_args` — alter `WP_Query` args. * `kcecsv_exportable_post_types` / `kcecsv_excluded_post_types` — post type lists. * `kcecsv_export_block_content` — raw block export. * `kcecsv_export_webflow_html` — Webflow HTML before final cleanup. * `kcecsv_export_csv_cell` — each CSV cell string before formula escaping. == Installation == 1. Upload the `khushal-content-export-to-csv` folder to `/wp-content/plugins/`. 2. Activate **Khushal Content Export to CSV** through the **Plugins** screen. 3. Open **Khushal CSV Export** in the admin menu. == Frequently Asked Questions == = Who can export? = Users with the **manage_options** capability (typically Administrators). = Is this plugin affiliated with Webflow? = No. “Webflow” appears only to describe an optional export format for that platform’s importers. = Where are ZIP files built? = Inside `wp-content/uploads/khushal-content-export-to-csv/` as temporary session folders, then deleted after the download is sent. == Screenshots == 1. Export screen with format options and download buttons. == Upgrade Notice == = 1.4.1 = Text domain, Plugin URI, main plugin file name, and folder name now match the WordPress.org plugin slug **`khushal-content-export-to-csv`**. == Changelog == = 1.4.1 = * Align gettext text domain, `Text Domain` header, `Plugin URI`, `KCECSV_UPLOAD_SUBDIR`, admin menu slug, bootstrap filename, and plugin directory name with slug **`khushal-content-export-to-csv`** (WordPress.org review). = 1.4.0 = * Bump to **1.4.0** for directory upload (package still used legacy slug `khushal-content-export-csv` until **1.4.1**). = 1.3.0 = * Directory **`khushal-content-export-csv`**, bootstrap **`khushal-content-export-csv.php`**, text domain and **`KCECSV_UPLOAD_SUBDIR`** all **`khushal-content-export-csv`**. * Plugin URI: `https://wordpress.org/plugins/khushal-content-export-csv/` (superseded by slug-aligned URI in **1.4.1**). * ZIP staging remains under uploads (session folders), not `get_temp_dir()`. = 1.2.2 = * Interim release while the directory listing permalink differed from the **`khushal-content-export-csv`** package layout. = 1.2.1 = * Include files `class-kcecsv-*.php`; readme short line trimmed. = 1.2.0 = * Display name **Khushal Content Export to CSV**; uploads-based ZIP staging; hooks prefix `kcecsv_`. = 1.1.2 = * Plugin Check: textdomain, nonce, PHPCS stream/`the_content` notes. = 1.1.1 = * Remove `Update URI`; `languages/`; Tested up to 6.9. = 1.1.0 = * Security and readme for directory submission. == Privacy == This plugin does not collect or sell personal data. Exports run on your server for logged-in administrators only.