EffortLess Association Member Manager

Description

EffortLess Association Member Manager stores each association member as a WordPress user with additional profile fields (role, subscription start and end dates, payment history, profile photo). It adds a Members admin menu for listing, adding, editing and trashing members, a Roles screen for defining membership roles with priority levels, a Subscriptions screen for tracking active, expiring and expired memberships, CSV export/import, and email templates sent through a queued cron job. On WordPress Multisite it can run in Global mode (one shared member list for the network) or Per-Site mode (each site keeps its own list).

Key Features

  • Member Management – Add, edit, and delete members with detailed profiles
  • Sortable Members List – Click column headers to sort members by last name (ascending/descending)
  • Subscription Tracking – Monitor active, expired, and expiring subscriptions
  • Role Management – Create custom roles with priority levels (Board Members, Regular Members, etc.)
  • Payment History – Track all member contributions and subscription renewals
  • Multi-site Support – Works with WordPress Multisite with Global or Per-Site member management modes
  • CSV Export – Export member lists with filtering options
  • Profile Photos – Members can upload profile pictures via WordPress Media Library
  • Dashboard Statistics – View total members, active subscriptions, and expiring memberships at a glance
  • Automated Notifications – Visual indicators for memberships expiring within 30 days
  • Configurable Settings – Set default subscription amounts, durations, and email preferences
  • Translatable – Interface strings are wrapped for translation under the plugin’s text domain
  • Responsive Design – Mobile-friendly admin interface

Intended For

  • Non-profit organizations
  • Professional associations
  • Sports clubs
  • Alumni associations
  • Community groups
  • Membership-based organizations

Additional Information

Privacy Policy

This plugin stores member information including names, email addresses, phone numbers, and addresses in your WordPress database. It does not send any data to external services. You are responsible for complying with privacy regulations (GDPR, etc.) when using this plugin.

Display Name Format

As of version 2.5.4, member names are displayed as “Last Name First Name” (without comma) to make alphabetical sorting by family name more intuitive. This format is applied automatically to new members and can be applied to existing members via the Settings page.

Settings Configuration

As of version 2.5.5, all settings are properly displayed and configurable:
Subscription Settings: Set default amounts, durations, and reminder thresholds
Email Settings: Configure sender name and email address for notifications
Database Tools: Maintain your data with cleanup and update utilities

Credits

Developed with ❤️ for associations and membership organizations worldwide.

Special thanks to all contributors and translators who help make this plugin better.

Installation

Automatic Installation

  1. Log in to your WordPress admin panel
  2. Navigate to Plugins > Add New
  3. Search for “EffortLess Association Member Manager”
  4. Click “Install Now” and then “Activate”

Manual Installation

  1. Download the plugin zip file
  2. Extract the zip file
  3. Upload the effortless-association-member-manager folder to /wp-content/plugins/ directory
  4. Activate the plugin through the ‘Plugins’ menu in WordPress

After Activation

  1. Navigate to Members in your WordPress admin menu
  2. Configure your membership roles in Members > Roles
  3. Set default subscription amount and duration in Members > Settings
  4. Start adding members via Members > Add Member
  5. (Optional) Go to Members > Settings and click “Update to Last First Format” to format existing member names

FAQ

How do I add a new member?

Navigate to Members > Add Member in your WordPress admin. Fill in the required information (first name, last name, email) and optionally assign a role and add an initial subscription.

How do I configure default subscription settings?

Go to Members > Settings. You can configure:
– Overdue Reminder Threshold (days after expiration before first reminder)
– Reminder Frequency (days between reminder emails)
– Default Subscription Amount (in euros)
– Default Subscription Duration (in months)
– Email From Name and Address

How do I sort the members list?

Click on the “Member” column header in the Members List. Each click toggles between ascending and descending order. Members are sorted by last name by default.

How are member names displayed?

Member names are displayed as “Last Name First Name” (e.g., “Smith John”) and sorted alphabetically by last name for easy lookup.

Can I track subscription history for each member?

Yes! Click on the “Contributions” icon next to any member in the Members List to view their complete payment history.

How do I create custom membership roles?

Go to Members > Roles and add your custom roles. Set a priority level (0-99). Roles with priority < 30 are automatically marked as “Board Members”.

Does this work with WordPress Multisite?

Yes! The plugin is fully compatible with WordPress Multisite installations. You can choose between two management modes in Settings:
Global Mode: All sites share the same members across the network
Per-Site Mode: Each site manages its own members independently

Can I export member data?

Yes! Use the “Export to CSV” button on the Members List or Subscriptions List pages. You can filter the export by role, subscription status, or search term.

How are expiring subscriptions highlighted?

Subscriptions expiring within 30 days are automatically highlighted with a warning color and show the number of days remaining.

Is the plugin translatable?

Interface strings are wrapped in WordPress translation functions under the effortless-association-member-manager text domain. French (fr_FR) and Spanish (es_ES) catalogues are included in the languages/ folder, along with the .pot template for starting a new language.

Note on how WordPress loads them: translations published through translate.wordpress.org are installed into WordPress’s own languages directory (wp-content/languages/plugins/) and are applied automatically. The catalogues bundled in the plugin folder are provided as a starting point for translators and for manual installation — copy the .mo file for your locale into wp-content/languages/plugins/ if you want to use it directly.

Can members upload profile photos?

Yes! When adding or editing a member, you can upload profile photos using the WordPress Media Library.

What date format does the plugin use?

The plugin respects your WordPress date format settings (Settings > General > Date Format).

Reviews

There are no reviews for this plugin.

Contributors & Developers

“EffortLess Association Member Manager” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

2.12.93 – 2026-08-22

  • Fix: the JSON export/import file and the profile photo upload validated the file’s name and temporary path without confirming they came from the current request’s own file upload. Both now use is_uploaded_file() before reading the file and sanitize_file_name() before the name is used anywhere, including in log entries.
  • Fix: the “members can edit their own profile” setting sanitized its stored value with a raw boolean cast, which treats the string “false” as true; it now uses rest_sanitize_boolean().
  • Fix: the email-attachment upload loaded two admin files it never used (media.php, image.php) alongside the one it does (file.php).
  • Change: the donate notice’s outbound link no longer includes the site address as a query parameter. It still identifies the plugin and version so support requests can be matched to a release, but not which installation was viewing it.

2.12.92 – 2026-08-13

  • Change: recording a subscription no longer emails the member automatically. The Add Subscription form has a new “Send notification email to the member” box, off by default — tick it when the member should be told. Quick subscribe, the one-click button in the members list, now records the payment silently; use the Add Subscription form when you want the email. Renewal reminders for expiring and expired memberships are unaffected and still go out on schedule.

2.12.91 – 2026-08-12

  • Change: “Send welcome email to new members” on the CSV import screen is now off by default. An import can create hundreds of members at once and sent email cannot be recalled, so notifying everyone is now something you opt into rather than something you have to remember to switch off. Tick the box to send as before.

2.12.90 – 2026-08-12

  • Fix: a site left with no membership roles now gets the three defaults (Member, Board Member, Guest) back automatically. They were only ever created when the plugin was activated, and WordPress does not re-run activation when a plugin is updated, so a site that reached an empty list stayed that way — leaving every role dropdown blank. Roles you renamed or deleted yourself are untouched; the defaults are only restored when the list is completely empty.
  • New: the three default role names are translated for display, so they read Membre / Membre du bureau / Invité in French and Miembro / Miembro de la junta / Invitado in Spanish. The stored value stays in English, so switching the site language re-labels them and role names remain stable for imports and exports.
  • Fix: CSV import now recognises a role given either by its stored name or by its translation, so a file prepared on a site running in another language imports correctly.

2.12.89 – 2026-08-12

  • Fix: “Estimated Recipients” on the Send Email page stayed blank instead of showing the number of members. The page’s script was never loaded, because the plugin recognised its own admin screens by a fixed name that WordPress builds from the (translated) menu title — so it matched no site at all, and no site running in another language could ever have matched. The same fault was silently skipping the styles and scripts of the Settings, Add Member, Roles, Trash and Email Queue screens, which now load as intended.

2.12.88 – 2026-08-12

  • Fix: member profile links returned a 404 on sites where WordPress is installed in its own subdirectory. The links were built from the address of the WordPress files rather than the address of the site, so they pointed outside the area the /member/ route serves. Affects the trombinoscope, the admin Members and Subscriptions lists, the {profile_url} email placeholder, and the redirect after saving a profile.

2.12.87 – 2026-08-12

  • Fix: the “Personal Options” and “Application Passwords” sections of the profile screen are now found by their position in the page rather than by reading their heading text, so no translated string is involved and the sections are hidden correctly in every language.

2.12.85 – 2026-08-12

  • Fix: the “Personal Options” and “Application Passwords” sections of the profile screen are hidden correctly in every language. They are hidden by matching WordPress’s own section headings, and the plugin previously compared them against its own translations of those headings — which only matched in English, French and Spanish, and left the sections visible in any other locale. The headings now come from WordPress’s own translations, so the match cannot drift.

Older changelog entries have been removed to keep this section within WordPress.org’s length limits.