=== Easy Avatar Upload ===
Contributors: kamrulislam0093
Tags: avatar, profile picture, user profile, upload, media library
Requires at least: 6.8
Tested up to: 6.8
Requires PHP: 7.4
Stable tag: 1.2
License: GPLv3
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Allows users to upload and manage a custom profile picture using the WordPress media library with enhanced security and user experience. 

== Description ==

** Easy Avatar Upload ** gives your users full control over their profile pictures. Instead of being locked into Gravatar, users can upload their own avatars directly from their WordPress profile page.

No coding required – just install, activate, and enjoy a user-friendly profile picture uploader.

This plugin is ideal for membership sites, forums, WooCommerce stores, eLearning platforms, and blogs where personalized avatars build trust and improve engagement.


### 🚀 Features

* 🖼️ Custom Avatar Upload – Let users upload profile pictures directly from the profile page.
* 🔄 Gravatar Replacement – Override WordPress’s default Gravatar system with a user-uploaded image.
* 🎨 Theme Compatible – Works with most WordPress themes and frameworks.
* 👤 Frontend + Backend Support – Avatars display in user profile, comments, forums, WooCommerce, and more.
* 🧹 Lightweight & Fast – Minimal code, no bloat, designed for speed.
* 🛠️ Developer Friendly – Clean code with hooks/filters for customization.
* 🗑️ Easy Reset Option – Users can remove or reset their avatar anytime.
* 👥 Use Cases

- Community & Forums → Works perfectly with bbPress, BuddyPress, PeepSo
- E-Commerce → Add personal avatars for WooCommerce customer accounts
- Multi-Author Blogs → Authors can upload their own profile image for posts
- Learning Management (LMS) → Students and teachers can upload profile pictures
- Corporate Sites → Professional user profiles without Gravatar dependency


### 🔑 Why Choose Easy Avatar Upload?
* No need for external services (Gravatar)
* Increases user engagement & personalization
* Improves trust and credibility on your site
* Beginner-friendly setup – no configuration required


== Usage ==

Use the shortcode: **[easyavup_avatar]**

=== Parameters ===

1. **mode**
   - Controls how the avatar is displayed.
   - Options:
     - `view` → Show only the avatar.
     - `edit` → Allow users to upload/change/delete their avatar.
   - Default: `view`

   Example: **[easyavup_avatar mode=edit]**


2. **size**
- Set the avatar size in pixels (width & height).
- Default: `96`

Example: **[easyavup_avatar size=150]**


== Examples ==

- Show a 100px avatar (view-only): **[easyavup_avatar mode=view size=100]**
- Show an editable avatar (120px): **[easyavup_avatar mode=edit size=120]**


== Installation ==

1. Upload the plugin files to the `/wp-content/plugins/easy-avatar-upload` directory, or install it directly through the WordPress plugins screen.
2. Activate the plugin through the **Plugins** screen in WordPress.
3. Go to **Users → Profile** (or edit any user) to see the new profile picture upload option.
4. Upload or remove the profile picture as needed.
5. You can use the following shortcode to display a public view of the avatar on any page or post: **[easyavup_avatar mode=view size=100]**
5. You can use this shortcode to allow users to upload or change their avatar on any page or post: **[easyavup_avatar mode=edit size=120]**



== Frequently Asked Questions ==

= Does this replace Gravatar? =  
Yes, if a user uploads a custom profile picture, it will override their Gravatar. If no image is set, Gravatar or the default avatar will be used.  

= Can I restrict image sizes or formats? =  
The plugin currently allows standard WordPress Media Library uploads (JPG, PNG, etc.) and respects your site’s upload limits.  

= Does it work for multisite? =  
Yes, it should work on multisite setups. Each site manages its own avatars.  

= Does this work for all users? =  
Yes, but the user must be logged in to see or edit their avatar.

= What happens if no custom avatar is uploaded? =  
WordPress will display the default avatar (from Settings > Discussion).

= Can I use this with Elementor or Gutenberg? =  
Yes! Just paste the shortcode into a shortcode block (Gutenberg) or a shortcode widget (Elementor).



== Screenshots ==

1. Custom profile picture upload option on the user profile page.
2. Use shortcode to display the profile picture on any page.
3. Enable users to change their profile picture via a popup.

== Changelog ==
= 1.2 =
Updated settings and fixed some minor issues.

= 1.1 =
Now any users can change their avatar frontend or backend. updated Frontend Version and Re Structured. 

= 1.0 =
* Initial release
* Upload and remove custom profile pictures
* Secure nonce validation and user capability checks
* Fallback to WordPress default avatar
