{"id":356603,"date":"2026-08-24T06:15:43","date_gmt":"2026-08-24T06:15:43","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/themepackager\/"},"modified":"2026-08-24T06:00:26","modified_gmt":"2026-08-24T06:00:26","slug":"themepackager","status":"publish","type":"plugin","link":"https:\/\/sl.wordpress.org\/plugins\/themepackager\/","author":23491477,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"trunk","tested":"7.1","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"ThemePackager","header_author":"Ansar Hussain","header_description":"Export any installed WordPress theme (active or inactive) as a ZIP file directly from Appearance \u2192 Themes.","assets_banners_color":"0d082f","last_updated":"2026-08-24 06:00:26","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/profiles.wordpress.org\/ansar317\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":45,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":[],"upgrade_notice":{"1.0.0":"<p>Initial release of ThemePackager.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3662708,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3662708,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3662893,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3662893,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":[],"block_files":[],"assets_screenshots":{"Screenshot-1.png":{"filename":"Screenshot-1.png","revision":3662708,"resolution":"1","location":"assets","locale":"","width":2560,"height":1109},"Screenshot-2.png":{"filename":"Screenshot-2.png","revision":3662708,"resolution":"2","location":"assets","locale":"","width":2535,"height":1102},"Screenshot-3.png":{"filename":"Screenshot-3.png","revision":3662708,"resolution":"3","location":"assets","locale":"","width":2540,"height":1121}},"screenshots":{"1":"The \"Export Themes\" button next to \"Add New Theme\" on the Appearance \u2192 Themes screen.","2":"The Export Themes modal listing all installed themes with details and individual export buttons.","3":"Search\/filter in action within the Export Themes modal."}},"plugin_section":[],"plugin_tags":[151,4932,1859,1141,7343],"plugin_category":[59],"plugin_contributors":[276085],"plugin_business_model":[],"class_list":["post-356603","plugin","type-plugin","status-publish","hentry","plugin_tags-backup","plugin_tags-developer-tools","plugin_tags-export","plugin_tags-theme","plugin_tags-zip","plugin_category-utilities-and-tools","plugin_contributors-ansar317","plugin_committers-ansar317"],"banners":{"banner":"https:\/\/ps.w.org\/themepackager\/assets\/banner-772x250.png?rev=3662893","banner_2x":"https:\/\/ps.w.org\/themepackager\/assets\/banner-1544x500.png?rev=3662893","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/themepackager\/assets\/icon-128x128.png?rev=3662708","icon_2x":"https:\/\/ps.w.org\/themepackager\/assets\/icon-256x256.png?rev=3662708","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/themepackager\/assets\/Screenshot-1.png?rev=3662708","caption":"The \"Export Themes\" button next to \"Add New Theme\" on the Appearance \u2192 Themes screen."},{"src":"https:\/\/ps.w.org\/themepackager\/assets\/Screenshot-2.png?rev=3662708","caption":"The Export Themes modal listing all installed themes with details and individual export buttons."},{"src":"https:\/\/ps.w.org\/themepackager\/assets\/Screenshot-3.png?rev=3662708","caption":"Search\/filter in action within the Export Themes modal."}],"raw_content":"<!--section=description-->\n<p>ThemePackager adds a simple, native-feeling \"Export Themes\" button to the Appearance \u2192 Themes screen, letting administrators download any installed theme as a ready-to-use ZIP archive without touching FTP, SSH, or a hosting file manager.<\/p>\n\n<p><strong>Key Features<\/strong><\/p>\n\n<ul>\n<li>Export any single installed theme (active or inactive) as a ZIP file.<\/li>\n<li>Export the currently active theme with one click.<\/li>\n<li>Export all installed themes into a single <code>all-themes.zip<\/code> archive, with each theme in its own folder.<\/li>\n<li>Native WordPress admin modal listing every installed theme with screenshot, name, version, author, status, folder name, directory size, and last modified date.<\/li>\n<li>Instant search\/filter across the theme list.<\/li>\n<li>Uses PHP's built-in <code>ZipArchive<\/code> class only \u2014 no external libraries, no Composer dependencies, no <code>shell_exec()<\/code>\/<code>exec()<\/code>\/<code>system()<\/code> calls.<\/li>\n<li>Streams the ZIP to the browser and automatically removes the temporary file afterward \u2014 nothing is left behind on your server.<\/li>\n<li>Administrator-only access, protected with WordPress nonces and strict path validation to prevent path traversal.<\/li>\n<li>Compatible with shared hosting, WordPress Multisite, and PHP 7.4 through 8.4.<\/li>\n<\/ul>\n\n<p>This plugin does not modify, move, or delete your theme files. It only reads them in order to build a ZIP archive for download.<\/p>\n\n<!--section=installation-->\n<p><strong>Automatic Installation<\/strong><\/p>\n\n<ol>\n<li>In your WordPress admin, go to Plugins \u2192 Add New.<\/li>\n<li>Search for \"ThemePackager\".<\/li>\n<li>Click Install Now, then Activate.<\/li>\n<\/ol>\n\n<p><strong>Manual Installation<\/strong><\/p>\n\n<ol>\n<li>Download the plugin ZIP file.<\/li>\n<li>In your WordPress admin, go to Plugins \u2192 Add New \u2192 Upload Plugin.<\/li>\n<li>Choose the downloaded ZIP file and click Install Now.<\/li>\n<li>Activate the plugin through the Plugins menu.<\/li>\n<\/ol>\n\n<p><strong>FTP Installation<\/strong><\/p>\n\n<ol>\n<li>Unzip the plugin package.<\/li>\n<li>Upload the <code>themepackager<\/code> folder to the <code>\/wp-content\/plugins\/<\/code> directory on your server.<\/li>\n<li>Activate the plugin through the Plugins menu in WordPress.<\/li>\n<\/ol>\n\n<p>After activation, go to <strong>Appearance \u2192 Themes<\/strong> and click the <strong>Export Themes<\/strong> button next to <strong>Add New Theme<\/strong>.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20modify%20or%20delete%20my%20theme%20files%3F\"><h3>Does this plugin modify or delete my theme files?<\/h3><\/dt>\n<dd><p>No. ThemePackager only reads your theme files to build a ZIP archive. It never modifies, moves, or deletes any theme file.<\/p><\/dd>\n<dt id=\"can%20i%20export%20a%20theme%20that%20is%20not%20currently%20active%3F\"><h3>Can I export a theme that is not currently active?<\/h3><\/dt>\n<dd><p>Yes. Every installed theme, active or inactive, appears in the Export Themes modal and can be exported individually.<\/p><\/dd>\n<dt id=\"does%20exporting%20%22all%20themes%22%20include%20the%20active%20theme%20too%3F\"><h3>Does exporting \"All Themes\" include the active theme too?<\/h3><\/dt>\n<dd><p>Yes. The \"Export All Themes\" option creates a single <code>all-themes.zip<\/code> archive containing every installed theme, each in its own top-level folder inside the ZIP.<\/p><\/dd>\n<dt id=\"where%20are%20the%20temporary%20zip%20files%20stored%3F\"><h3>Where are the temporary ZIP files stored?<\/h3><\/dt>\n<dd><p>ZIP files are generated temporarily inside <code>wp-content\/uploads\/themepackager-temp\/<\/code>, streamed directly to your browser, and then automatically deleted from the server. No ZIP files are stored permanently.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20the%20ziparchive%20php%20extension%20is%20not%20available%3F\"><h3>What happens if the ZipArchive PHP extension is not available?<\/h3><\/dt>\n<dd><p>The plugin will display an admin notice explaining that the <code>ZipArchive<\/code> PHP extension is required and will not attempt to run without it. Most hosts, including shared hosting, have this extension enabled by default; contact your host if you see this notice.<\/p><\/dd>\n<dt id=\"who%20can%20use%20this%20plugin%3F\"><h3>Who can use this plugin?<\/h3><\/dt>\n<dd><p>Only users with the <code>manage_options<\/code> capability (typically Administrators) can see the Export Themes button or use any of its export functions.<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20work%20on%20multisite%3F\"><h3>Does this plugin work on Multisite?<\/h3><\/dt>\n<dd><p>Yes. ThemePackager is compatible with WordPress Multisite installations.<\/p><\/dd>\n<dt id=\"will%20this%20work%20on%20my%20shared%20hosting%20account%3F\"><h3>Will this work on my shared hosting account?<\/h3><\/dt>\n<dd><p>Yes. The plugin relies exclusively on PHP's native <code>ZipArchive<\/code> class and does not use <code>shell_exec()<\/code>, <code>exec()<\/code>, <code>system()<\/code>, or any external libraries, making it safe for shared hosting environments.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<li>Export any single installed theme as a ZIP file.<\/li>\n<li>Export the active theme with one click.<\/li>\n<li>Export all installed themes into a single <code>all-themes.zip<\/code> archive.<\/li>\n<li>Native admin modal with search, screenshots, and theme metadata.<\/li>\n<li>Secure, nonce-protected, administrator-only AJAX export workflow.<\/li>\n<li>Temporary ZIP files are streamed and automatically deleted after download.<\/li>\n<\/ul>","raw_excerpt":"Export any installed WordPress theme (active or inactive) as a ZIP file directly from Appearance \u2192 Themes.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/sl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/356603","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/sl.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/sl.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=356603"}],"author":[{"embeddable":true,"href":"https:\/\/sl.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/ansar317"}],"wp:attachment":[{"href":"https:\/\/sl.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=356603"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/sl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=356603"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/sl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=356603"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/sl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=356603"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/sl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=356603"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/sl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=356603"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}