Skip to content

Commit f4a3cb5

Browse files
authored
Updated Workflows
1 parent 4dd5624 commit f4a3cb5

4 files changed

Lines changed: 164 additions & 14 deletions

File tree

.github/ISSUE_TEMPLATE/compatibility-test-failure.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ The automated compatibility test for PHP {{ env.PHP_VERSION }} has failed.
1717

1818
### Next Steps
1919

20-
This issue has been automatically created because the Simple WP Optimizer plugin failed to load properly with PHP {{ env.PHP_VERSION }}. This could indicate compatibility issues that need to be addressed.
20+
This issue has been automatically created because the EngineScript Simple Site Exporter plugin failed to load properly with PHP {{ env.PHP_VERSION }}. This could indicate compatibility issues that need to be addressed.
2121

2222
#### Recommended Actions:
2323

.github/ISSUE_TEMPLATE/plugin-check-failure.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ assignees: []
66

77
## WordPress Plugin Check Failure
88

9-
The WordPress Plugin Check action has identified issues with the Simple WP Optimizer plugin.
9+
The WordPress Plugin Check action has identified issues with the EngineScript Simple Site Exporter plugin.
1010

1111
### Details
1212

.github/workflows/continuous-integration.yml

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# This workflow runs continuous integration checks on the Simple WP Optimizer plugin.
1+
# This workflow runs continuous integration checks on the EngineScript Simple Site Exporter plugin.
22
# It performs code linting for both PHP and JavaScript files and builds the plugin package.
33
# The workflow is triggered on push to main branch and on pull requests to ensure code quality.
44
# It creates and stores a plugin zip file as an artifact that can be used for testing.
@@ -161,27 +161,29 @@ jobs:
161161
162162
- name: Create plugin package
163163
run: |
164-
mkdir -p build/simple-wp-optimizer
164+
mkdir -p build/enginescript-simple-site-exporter
165165
166166
# Copy main plugin file
167-
cp simple-wp-optimizer.php build/simple-wp-optimizer/
167+
cp simple-site-exporter.php build/enginescript-simple-site-exporter/
168168
169169
# Copy directories if they exist
170-
[ -d assets ] && cp -r assets build/simple-wp-optimizer/ || echo "No assets directory found"
171-
[ -d includes ] && cp -r includes build/simple-wp-optimizer/ || echo "No includes directory found"
172-
[ -d languages ] && cp -r languages build/simple-wp-optimizer/ || echo "No languages directory found"
173-
[ -d templates ] && cp -r templates build/simple-wp-optimizer/ || echo "No templates directory found"
170+
[ -d assets ] && cp -r assets build/enginescript-simple-site-exporter/ || echo "No assets directory found"
171+
[ -d includes ] && cp -r includes build/enginescript-simple-site-exporter/ || echo "No includes directory found"
172+
[ -d languages ] && cp -r languages build/enginescript-simple-site-exporter/ || echo "No languages directory found"
173+
[ -d templates ] && cp -r templates build/enginescript-simple-site-exporter/ || echo "No templates directory found"
174174
175175
# Copy additional files if they exist
176-
[ -f readme.txt ] && cp readme.txt build/simple-wp-optimizer/ || echo "No readme.txt found"
177-
[ -f LICENSE ] && cp LICENSE build/simple-wp-optimizer/ || echo "No LICENSE file found"
176+
[ -f readme.txt ] && cp readme.txt build/enginescript-simple-site-exporter/ || echo "No readme.txt found"
177+
[ -f README.md ] && cp README.md build/enginescript-simple-site-exporter/ || echo "No README.md found"
178+
[ -f CHANGELOG.md ] && cp CHANGELOG.md build/enginescript-simple-site-exporter/ || echo "No CHANGELOG.md found"
179+
[ -f LICENSE ] && cp LICENSE build/enginescript-simple-site-exporter/ || echo "No LICENSE file found"
178180
179181
# Create zip file
180182
cd build
181-
zip -r simple-wp-optimizer.zip simple-wp-optimizer
183+
zip -r enginescript-simple-site-exporter.zip enginescript-simple-site-exporter
182184
183185
- name: Upload build artifact
184186
uses: actions/upload-artifact@v4
185187
with:
186-
name: simple-wp-optimizer
187-
path: build/simple-wp-optimizer.zip
188+
name: enginescript-simple-site-exporter
189+
path: build/enginescript-simple-site-exporter.zip

readme.txt

Lines changed: 148 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,148 @@
1+
=== EngineScript: Simple Site Exporter ===
2+
Contributors: enginescript
3+
Tags: backup, export, migration, site export, database export
4+
Requires at least: 5.8
5+
Tested up to: 6.8
6+
Stable tag: 1.5.9
7+
Requires PHP: 7.4
8+
License: GPLv3 or later
9+
License URI: https://www.gnu.org/licenses/gpl-3.0.html
10+
11+
Export your entire WordPress site, including files and database, as a secure downloadable ZIP archive.
12+
13+
== Description ==
14+
15+
EngineScript Simple Site Exporter provides WordPress administrators with a straightforward, secure way to export their entire website. With a single click, you can create a complete backup of your site's files and database, perfect for site migrations, backups, or local development environments.
16+
17+
Key features:
18+
* One-Click Export: Create a complete site backup with just one click
19+
* Database Export: Includes a full database dump in your export
20+
* Automatic Cleanup: Exports are automatically deleted after 5 minutes to enhance security
21+
* Secure Downloads: All exports use WordPress security tokens for protected access
22+
* WP-CLI Integration: Leverages WP-CLI for efficient database exports when available
23+
* Export Management: Download or manually delete export files as needed
24+
* EngineScript Integration: Natively works with EngineScript's LEMP server environment and site import tools
25+
26+
This plugin is designed to work seamlessly with the EngineScript LEMP server environment:
27+
28+
* Native Integration: Automatically detected and configured when running on an EngineScript server
29+
* Compatible Exports: All exports created with this plugin are directly compatible with EngineScript's site import tools
30+
* Streamlined Migrations: Export from any WordPress site and import directly to an EngineScript-powered server
31+
* Optimized Performance: When used on an EngineScript server, the plugin leverages server-optimized settings
32+
33+
The export format is specifically designed to work with EngineScript's site import functionality, allowing for seamless site migrations between WordPress installations.
34+
35+
== Installation ==
36+
37+
1. Upload the plugin files to the `/wp-content/plugins/enginescript-simple-site-exporter` directory, or install the plugin through the WordPress plugins screen directly.
38+
2. Activate the plugin through the 'Plugins' screen in WordPress.
39+
3. Navigate to Tools → Site Exporter in your WordPress admin.
40+
4. Click the "Export Site" button to create a full site backup.
41+
42+
== Frequently Asked Questions ==
43+
44+
= How large of a site can I export? =
45+
46+
The plugin is designed to work with most WordPress sites, but very large sites (multiple GB) may encounter timeout or memory limitations depending on your hosting environment.
47+
48+
= Where are the export files stored? =
49+
50+
Exports are stored in your WordPress uploads directory, specifically at:
51+
`[wp-root]/wp-content/uploads/enginescript-sse-site-exports/`
52+
53+
= Why do export files disappear after 5 minutes? =
54+
55+
For security and disk space considerations, all exports are automatically deleted after 5 minutes. This ensures sensitive site data isn't left stored indefinitely.
56+
57+
= Can I create multiple exports? =
58+
59+
Yes, you can create as many exports as needed. Each will have a unique filename based on the timestamp of creation.
60+
61+
= Does this include my themes and plugins? =
62+
63+
Yes, the export includes your entire WordPress installation: themes, plugins, uploads, and the complete database.
64+
65+
= Can I use this plugin with non-EngineScript servers? =
66+
67+
Absolutely! While the plugin integrates seamlessly with EngineScript servers, it works perfectly on any WordPress installation regardless of the server environment.
68+
69+
= Will this work on shared hosting environments? =
70+
71+
Yes, the plugin is designed to be compatible with most shared hosting environments. However, large sites may encounter timeout or memory limitations on restrictive hosting plans.
72+
73+
== Changelog ==
74+
75+
= 1.5.9 =
76+
* Reduced export file auto-deletion time from 1 hour to 5 minutes for improved security
77+
* Removed dependency on external systems for file security management
78+
* Simplified user interface by removing environment-specific messaging
79+
* Enhanced self-containment of the plugin's security features
80+
81+
= 1.5.8 =
82+
* Refactored validation functions to eliminate code duplication
83+
* Created shared validation function for both download and deletion operations
84+
* Improved code maintainability while preserving security controls
85+
* Updated license to GPL v3
86+
* Enhanced file path validation
87+
* Strengthened regex pattern for export file validation
88+
* Added proper documentation for security-related functions
89+
90+
= 1.5.7 =
91+
* Implemented comprehensive file path validation function to prevent directory traversal attacks
92+
* Added referrer checks for download and delete operations
93+
* Enhanced file pattern validation with stronger regex patterns
94+
* Improved path display in admin interface
95+
* Added security headers to file download operations
96+
* Implemented strict comparison operators throughout the plugin
97+
* Consistently applied sanitization to nonce values before verification
98+
99+
= 1.5.6 =
100+
* Added more detailed logging for export operations
101+
* Improved error handling during file operations
102+
* Fixed potential memory issues during export of large sites
103+
* Resolved a race condition in the scheduled deletion process
104+
105+
= 1.5.5 =
106+
* Added automatic deletion of export files after 1 hour
107+
* Implemented secure download mechanism through WordPress admin
108+
* Added ability to manually delete export files
109+
* Enhanced file export process with better error handling
110+
* Improved progress feedback during export operations
111+
112+
= 1.5.4 =
113+
* Added deletion request validation and confirmation
114+
* Implemented redirect after deletion with status notification
115+
* Fixed database export issues on some hosting environments
116+
117+
= 1.5.3 =
118+
* Added manual export file deletion
119+
* Enhanced security for file operations
120+
* Better error handling for WP-CLI operations
121+
* Improved user interface with clearer notifications
122+
123+
= 1.5.2 =
124+
* Added WP-CLI integration for database exports
125+
* Implemented fallback methods for database exports
126+
* Fixed ZIP creation issues on certain hosting environments
127+
128+
= 1.5.1 =
129+
* Enhanced ZIP file creation process
130+
* Improved handling of large files
131+
* Added exclusion for cache and temporary directories
132+
133+
= 1.5.0 =
134+
* Initial Release
135+
* Basic site export functionality
136+
* Database and file export
137+
* Simple admin interface
138+
139+
== Upgrade Notice ==
140+
141+
= 1.5.9 =
142+
This update improves security by reducing export file auto-deletion time from 1 hour to 5 minutes and enhances overall plugin security with simplified, self-contained security features.
143+
144+
= 1.5.8 =
145+
This update includes improved code quality, better validation functions, and enhanced security with file path validation and stronger regex patterns. Includes update to GPL v3 license.
146+
147+
= 1.5.7 =
148+
Important security update: Includes comprehensive file path validation, referrer checks for download operations, enhanced validation patterns, and improved security headers.

0 commit comments

Comments
 (0)