It’s nice to allow WordPress users to upload their own avatars, profile photos, as opposed to having to rely on Gravatar. Gravatar works well and is robust, but it tends to be hard to get users who don’t already use Gravatar to start using the service.
Several WordPress plugins exist that allow for custom user avatars. Some of these also allow for uploading avatars through the frontend.
The latter is useful if you can’t or won’t give access to your backend to your users.
The most usable plugin for this, that I’m aware of at the moment, is WP User Avatar by Flippercode. However, this plugin requires a paid version, if you don’t also want to give access to the full media library to your users. I’m not aware of a free plugin that only allows the user to change their own avatar, and nothing else.
So, I decided to quickly throw together my own free WordPress plugin, aptly called MB Simple User Avatar, that exactly does that; allow users to change their avatar through the frontend, using a shortcode.
The plugin is available through the WordPress plugin repository.
From early 2023 onwards, I do not actively maintain this plugin. I’ve found that it’s straightforward to use ACF to facilitate the same functionality. ACF is much more of a beast than my little plugin, but as I use ACF on every WordPress install, not using my own plugin means one plugin less for each install.