A comprehensive WordPress content management plugin with GPT-powered analysis, advanced logging, and smart notifications.
-
Advanced Content Management
- Custom post types for organized content
- Meta Box integration for enhanced fields
- Support for EmbedPress and PDF Embedder
- Bricks Builder compatibility
-
AI-Powered Analysis
- GPT integration for content analysis
- Automated content suggestions
- Smart content categorization
-
Robust Logging System
- Multiple log levels (DEBUG to CRITICAL)
- Database-based logging
- Log retention management
- Export functionality
-
Smart Notifications
- Email notifications for critical errors
- Configurable notification levels
- HTML email templates
- Custom notification rules
-
System Diagnostics
- Comprehensive system status
- Real-time diagnostics
- Performance monitoring
- Configuration validation
- PHP 7.4 or higher
- WordPress 5.8 or higher
- MySQL 5.6 or higher
- Meta Box plugin
- Optional: EmbedPress, PDF Embedder
- Upload the plugin files to
/wp-content/plugins/wpcustomcontent/
- Activate the plugin through the 'Plugins' screen in WordPress
- Configure the plugin settings at WPCustomContent > Settings
- Set up GPT Trainer API key in Settings
- Configure email notification settings
- Adjust logging preferences
- Enable/disable EmbedPress support
- Configure PDF Embedder integration
- Set up Bricks Builder compatibility
- Set log retention period
- Configure log levels
- Set up email notifications
- Meta Box: Required for custom fields and meta data management
- Must be installed and activated for core functionality
- EmbedPress: Enhances media embedding capabilities
- When installed and activated, enables advanced embedding features
- Integration can be enabled/disabled in plugin settings
- PDF Embedder: Provides PDF document display functionality
- When installed and activated, enables PDF embedding features
- Integration can be enabled/disabled in plugin settings
The plugin includes smart dependency handling:
- Automatically detects plugin installation and activation status
- Prevents enabling features when required plugins are not ready
- Provides clear guidance on required actions (install/activate)
- Settings automatically sync with plugin status changes
The plugin provides integration settings for optional dependencies:
-
EmbedPress Integration
- Enables enhanced media embedding features
- Requires EmbedPress plugin to be installed and activated
- Settings will be disabled if EmbedPress is not ready
-
PDF Embedder Integration
- Enables PDF document display features
- Requires PDF Embedder plugin to be installed and activated
- Settings will be disabled if PDF Embedder is not ready
- Settings are automatically validated against plugin availability
- Integration options are disabled when plugins are not ready
- Clear messages indicate required actions for each integration
- Settings automatically update when plugin status changes
# Clone the repository
git clone https://github.com/TrevorLowing/WPCustomContent.git
# Install dependencies
composer install
# Run tests
composer test
# Deploy for testing
.\deploy-test.ps1
# Deploy without version increment
.\deploy-test.ps1 -NoVersionIncrement
- Base version defined in plugin file
- Test versions follow format:
{base_version}-test.{number}
- Version tracking in
version.json
Plugin
: Main plugin initializationAdmin\Settings
: Plugin settings managementAdmin\SystemStatus
: System diagnosticsLogger\Logger
: Logging functionalityNotifications\EmailNotifier
: Email notificationsPostTypes\ContentPostType
: Content management
// Add custom meta box
add_filter('rwmb_meta_boxes', [$this, 'register_meta_boxes']);
// Content display filter
add_filter('the_content', [$this, 'display_content']);
// Bricks Builder integration
add_filter('bricks/builder/supported_post_types', [$this, 'add_bricks_post_type']);
// GPT API example
$response = wp_remote_post('https://api.gpt-trainer.com/analyze', [
'headers' => [
'Authorization' => 'Bearer ' . $api_key,
'Content-Type' => 'application/json'
],
'body' => json_encode($data)
]);
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the GPL v2 or later - see the LICENSE file for details.
- Author: Trevor Lowing
- Company: Varry LLC
- Contributors: [List of contributors]
- Initial release
- Core functionality implementation
- Logging system
- Email notifications
- System diagnostics
- Enhanced AI integrations
- Advanced content analysis
- More third-party plugin support
- Performance optimizations
- Expanded workflow automation
- Rate limiting with GPT API
- Large log file management
- Cross-browser testing ongoing