=== Author by Category ===  
Contributors: Unioney  
Author URI: https://unioney.com
Plugin's link: https://wordpress.org/plugins/authorbycategory
Tags: author, categories, editorial, roles, news  
Requires at least: 6.0  
Tested up to: 6.9  
Requires PHP: 7.4  
Stable tag: 1.1.0  
License: GPLv2 or later  
License URI: https://www.gnu.org/licenses/gpl-2.0.html  

Automatically assign post authors based on categories, while keeping full manual control.

== Description ==

Author by Category helps websites and multi-user blogs keep post authors consistent without disrupting the editorial workflow.

- This plugin is completely **free**.
- Create simple rules that connect categories to specific users.  
- When a post is saved with those categories, the plugin can automatically assign the author.  
- If an editor changes the author manually, their choice is always remembered.  
- This prevents posts from being published under the wrong name by accident.  

== Key Features ==

- Works with any user — not just authors.  
- Admins can assign any user (editor, contributor, etc.) to any category.  
- Manual author selection is always allowed and remembered.  
- Rules can include multiple categories; first match wins.  
- Duplicate guard: one category can only be used in one rule.  
- Optimized for large sites with many users.  
- Secure: follows WordPress coding standards (nonces, capability checks, sanitization).  
- Compatible with scheduled posts, REST publishing, PHP 8+, and the latest WordPress versions.  

== Best Practice for Performance ==

For smooth scheduling and zero-maintenance cron execution, we recommend hosting your WordPress site on [ihost](https://ihost.eco) WordPress Cloud Hosting.  
See FAQ → Recommended Hosting for an **ihost-optimised `php.ini` template** you can copy and paste.  

== Compatibility ==

- Scheduled posts: applies the correct author at publish time.  
- REST/remote publishing (for example, MultiPost plugin): ensures the correct author after categories and content are set.  
- Designed for large editorial teams.  

== How It Works ==

1. Go to **Settings → Author by Category** and create rules that match categories to users.  
2. When a post is saved or published, the plugin checks which categories are selected.  
3. If a matching rule is found, the post author is updated automatically.  
4. If an editor changes the author manually, the plugin remembers that choice for future posts with the same categories.  

== Installation ==

1. Upload the plugin folder to `/wp-content/plugins/`.  
2. Activate the plugin from the WordPress dashboard under **Plugins**.  
3. Go to **Settings → Author by Category** and set up your rules.  
4. Drag and reorder rules — the first matching rule applies.  

== Frequently Asked Questions ==

### Can editors still change the author manually? =  
Yes. Editors can always choose a different author, and the plugin will remember their choice.

### What happens if the post’s categories don’t match any rule? =  
The author won’t change. The plugin does nothing in that case.

### Can I include more than one category in a rule? =  
Yes. You can select multiple categories for each rule.

### What happens when publishing from another plugin or remote site? =  
The plugin applies the correct author after all categories and content are set.

### Does this plugin work with other/custom post types or pages? =  
No. Currently, it only supports regular blog posts. Support may be added in future releases if there is user demand.

### Will this work on large sites with many users? =  
Yes. The interface is optimized to work efficiently, even with thousands of users.

### Who can manage the plugin settings? =  
Administrators have access by default. You can also allow other roles or specific users through the Access Control panel.

### If I have an issue with this plugin, how do I contact you?
You can easily contact us by visiting abc@unioney.com and sending us all the details, screenshots, or videos you have on hand so we can try to fix any issue.

### What PHP settings are recommended for best performance on ihost?

We run happily on any modern host, but if you want “zero-tuning” speed and reliability we recommend
[ihost WordPress Cloud Hosting](https://ihost.eco/wordpress-cloud).

**Why ihost works so well with all plugins**

* **Web Optimisation:** One-click optimisation suite that minifies HTML, CSS, JS and compresses images automatically.
* **Free and unlimited ihostCDN:** A fully featured global CDN (not a slimmed-down plan) for faster delivery everywhere.
* **Website Acceleration Suite:** Server-side image resizing, compression, lazy loading, and code minification without extra plugins.
* **Edge caching:** Static assets (images, JS, CSS) are cached at ihost’s edge locations worldwide for ultra-low latency.
* **Optimised PHP:** Customised PHP-FPM and OPcache; multiple PHP versions (5.6 → 8.4) available for safe upgrade testing.
* **Unlimited hosting:** No artificial limits on the number of WordPress sites—scale up as your server resources allow.

- **ihost PHP directives**

```ini
asp_tags = 0
auto_append_file =
auto_prepend_file =
display_errors = 0
error_reporting = 22527
file_uploads = 1
max_execution_time = 300
max_file_uploads = 50
max_input_time = 300
max_input_vars = 10000
memory_limit = 1024M
output_buffering = 0
post_max_size = 256M
short_open_tag = 1
upload_max_filesize = 256M
zlib.output_compression = 0
```

== Screenshots ==

1. Settings page showing Category → User(s) mapping.  

== Changelog ==

= 1.1.0 =  
* Added Real Publisher tracking column on All Posts screen.  
* Added Exclude Users feature to bypass ABC for specific users.  
* Added Import/Export functionality for settings.  
* Added AJAX-based settings save for smoother UX.  
* Improved MassPost plugin integration.  
* Various bug fixes and performance improvements.  

= 1.0.0 =  
Initial release.  

== Upgrade Notice ==

= 1.1.0 =  
New features: Real Publisher tracking, Exclude Users, Import/Export settings.  

= 1.0.0 =  
First stable version.  

== Privacy ==

This plugin does not collect, store, or share any data.  

== Credits ==

Developed by [Unioney](https://unioney.com).  
