# PC Announcements 274

A comprehensive WordPress plugin for creating and managing announcements that display at the top of public pages with scheduling capabilities.

## Features

- **Admin Management**: Create, edit, delete, and schedule announcements through an intuitive admin interface
- **Scheduling**: Set start and end dates for announcements with automatic activation/deactivation
- **Modern Frontend Display**: Responsive, accessible announcement banners with smooth animations
- **Security**: Built with WordPress security best practices including nonce verification and capability checks
- **Customizable**: Easily styled with CSS custom properties and modern design patterns
- **Mobile Responsive**: Optimized for all screen sizes with mobile-first approach

## Installation

1. Upload the `pc-announcements-274` folder to your WordPress `/wp-content/plugins/` directory
2. Activate the plugin through the WordPress admin "Plugins" menu
3. Navigate to "Announcements" in the WordPress admin to create your first announcement

## Usage

### Creating Announcements

1. Go to **Announcements → Add New** in the WordPress admin
2. Enter a title and message for your announcement
3. Optionally add an image URL
4. Set scheduling dates (start/end) if needed
5. Set the status (active, inactive, or scheduled)
6. Click "Create Announcement"

### Managing Announcements

- View all announcements at **Announcements → All Announcements**
- Edit existing announcements by clicking the "Edit" button
- Delete announcements using the "Delete" button with confirmation
- See real-time status indicators for active announcements

### Frontend Display

Announcements automatically appear at the top of all public pages when:
- The announcement status is set to "Active"
- The current time is within the scheduled start and end dates
- The announcement hasn't been dismissed by the user

## Customization

### CSS Custom Properties

You can customize the appearance using these CSS variables:

```css
:root {
    --pc-announcements-274-bg-primary: #0d47a1;
    --pc-announcements-274-bg-secondary: #1565c0;
    --pc-announcements-274-text-primary: #ffffff;
    --pc-announcements-274-text-secondary: rgba(255, 255, 255, 0.9);
    --pc-announcements-274-border-radius: 8px;
    --pc-announcements-274-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto;
}
```

### Theme Variations

Add these classes to customize appearance:
- `.pc-announcements-274-success` - Green theme
- `.pc-announcements-274-warning` - Orange theme  
- `.pc-announcements-274-error` - Red theme
- `.pc-announcements-274-info` - Light blue theme
- `.pc-announcements-274-compact` - Smaller, compact version
- `.pc-announcements-274-no-image` - Hide image and optimize layout

## Security Features

- **Capability Checks**: Only administrators can manage announcements
- **Nonce Verification**: All AJAX requests protected with WordPress nonces
- **Input Sanitization**: All user inputs properly sanitized and escaped
- **Database Security**: Prepared statements used for all database operations
- **CSRF Protection**: Built-in CSRF protection for form submissions

## Accessibility

- WCAG 2.1 AA compliant design
- Keyboard navigation support
- Screen reader compatibility
- High contrast mode support
- Reduced motion preferences respected
- Focus management for dynamic content

## Browser Support

- Chrome 60+
- Firefox 55+
- Safari 12+
- Edge 79+
- Mobile browsers (iOS Safari 12+, Android Chrome 60+)

## Technical Details

- **PHP Version**: 7.4+
- **WordPress Version**: 5.0+
- **Database**: Uses custom table with proper indexing
- **Performance**: Optimized queries with caching considerations
- **Memory**: Minimal memory footprint
- **Standards**: Follows WordPress coding standards and best practices

## Changelog

### Version 1.0.0
- Initial release
- Core announcement management functionality
- Admin interface with CRUD operations
- Frontend display with responsive design
- Scheduling and status management
- Security and accessibility features

## Support

For support, documentation, and updates:
- Plugin URL: https://plugincompass.com/plugins/pc-announcements-274
- Author: Plugin Compass
- Author URI: https://plugincompass.com

## License

This plugin is licensed under the GPL-2.0-or-later license.