🚀 Persian Framework v1.0.2
Version 1.0.2 - WordPress Coding Standards Compliance & Security Hardening
This major update brings full compliance with WordPress Coding Standards, enhanced security, and significant code quality improvements across all 40+ field types.
🔒 Security & Standards
- Complete WordPress Coding Standards compliance for all files
- Fixed all PHPCS errors: WordPress.Security.EscapeOutput.OutputNotEscaped
- Replaced all translation functions:
_e()→esc_html_e()_()→esc_html__()_x()→esc_html_x()
- Fixed timezone issues: Replaced
date()withgmdate()in time fields - Removed external CDN dependencies: Font Awesome and SortableJS now use local files
- Added file existence checks before include/enqueue
- Enhanced sanitization: Added
wp_unslash()andmap_deep()for all inputs - Fixed unchecked checkbox handling in AJAX save
- Fixed multi-select array preservation
✨ New Features
- Global variable support for fast option access (
$GLOBALS) - Enhanced dark mode with improved contrast and accessibility
- Better notification system with save warnings
- Improved search functionality for settings
- Added Telegram and WhatsApp contact information in README
🛠️ Improvements
- Complete refactor of
class-framework-admin.php:- Added proper file existence checks
- Fixed all output escaping
- Improved AJAX error handling
- Optimized
class-persian-framework.php:- Added global variable support
- Improved instance management
- Better config loading
- Updated
field-time.php: Fixed timezone issue withgmdate() - Updated
field-font-awesome-picker.php: Removed CDN dependency, using local files - Improved
class-framework-fields.php: Better sanitization and error handling - Enhanced
class-framework-loader.php: Added file existence checks
📚 Documentation
- Updated README.md to v1.0.2
- Added "Using Saved Data" section with examples
- Added "Best Practices" section for security
- Added "Troubleshooting" section
- Added "Changelog" section
- Added Telegram and WhatsApp contact information
- Updated all code examples with proper escaping
🐛 Bug Fixes
- Fixed gallery field clearing issue
- Fixed checkbox values not saving correctly
- Fixed multi-select array handling
- Fixed time field timezone display
- Fixed Font Awesome CDN dependency
- Fixed file include path issues
- Fixed AJAX save error handling
🔧 Requirements
- WordPress 5.0 or higher
- PHP 7.4 or higher
📦 Upgrade Instructions
From WordPress Admin:
- Go to Plugins → Installed Plugins
- Find Persian Framework
- Click Update Now
Manual Update:
- Download v1.0.2 from GitHub
- Replace
/wp-content/plugins/persian-framework/ - Clear any caching plugins
After Update:
- Clear browser cache
- Check settings pages for any issues
- Verify all fields are displaying correctly
🔍 What's New in Detail
Security Compliance
All 40+ field types have been reviewed and updated for:
- Output escaping with
esc_html(),esc_attr(),esc_url() - Input sanitization with
sanitize_text_field(),absint(),esc_url_raw() - Nonce verification for all AJAX requests
- Capability checks with
current_user_can('manage_options')
WordPress Coding Standards
All PHPCS warnings resolved:
- ✅
WordPress.Security.EscapeOutput.OutputNotEscaped - ✅
WordPress.WP.I18n.MissingTranslatorsComment - ✅
WordPress.WP.EnqueuedResources.NonEnqueuedScript - ✅
WordPress.DateTime.RestrictedFunctions.date_date
Performance Improvements
- Global variable support reduces
get_option()calls - Optimized AJAX save with better data handling
- Reduced database queries with caching
⚠️ Breaking Changes
None. This version is fully backward compatible with v1.0.1.
🚀 Migration Guide
No migration needed. All existing settings remain intact.
📝 Full Changelog
📥 Download
https://github.com/chehresay/persian-framework/releases/tag/v1.0.2
🔒 Secure | 📝 Standard | 🚀 Fast
⭐ Made with ❤️ by Morad Chehresay ⭐