First – thanks for taking the time to post a review. I appreciated the feedback.
Some of what you’ve mentioned is actually already there.
That being said, there’s still a simple feature I’d like to see in a future update, and that would be the ability to add/replace the default text/labels of the log-in/sign-up forms.
Right now those are pulled from /wp-content/languages/plugins/wp-members-{locale}.mo by default and since this plugin is often used in the context of membership websites that isn’t always the best line.
There are two different things here. One is the ability to change specific dialogs/text, the other is translation. These should be separate – and in this plugin they are.
Changing text
All text (and many other things) that is shown on the user side can be changed via filters in the same way as WordPress. In several cases, more than one filter applies.
In making the plugin more adaptable for multi-language sites, I consolidated all user facing text strings into one place and these can all be filtered using wpmem_default_text_strings.
If you are going through editing files directly (something you shouldn’t do), you’ll likely notice the documentation for filters inline with the text. The plugin’s code follows WordPress coding and documentation standards, so all filters and actions are documented inline in the code. Anytime you see some text in the plugin, there will likely be a filter hook nearby. I would much rather see you use a filter for changing things rather than editing the files. Using a filter is upgradeable – changing the files is not. (There are some free articles on the support site that cover these concepts.)
In addition to being able to filter any of these strings, there are a couple of API functions that allow you to add custom dialogs to the admin panel and then use them on the front end – wpmem_add_custom_dialog() and wpmem_use_custom_dialog() These are new so I don’t have specific examples on the site yet, but they can actually be used to add totally custom dialogs to the Dialogs tab and then use those in the plugin’s processing, or they can also be used to add existing dialogs that are not editable in the dialogs tab be be editable there.
Lastly, Text String Editor is a new extension available to premium support subscribers that adds a tab to the admin panel that allows you to directly edit any of the text strings in the plugin.
Translation
The plugin’s translation files shouldn’t be used for changing text strings. They really should just be used for translating specific text. Also, keep in mind that if a string is changed directly in one of the plugin’s files, the translation file will no longer find it.
The location you mentioned for the translation files is actually not the primary location. The files in that folder are not longer supported as the plugin is now part of the WordPress polyglots translation project. Since not every language has a complete translation and a language pack will not automatically download from www.remarpro.com until it is at 95% complete, the legacy files are left in for people who currently have existing installs that are upgrading and need those files. But it is preferred to work from the polyglots files as those are (1) more complete and (2) can be loaded from outside the plugin (making customization possible).
Additionally, there is a filter hook for loading translation files from any location you wish. So using wpmem_localization_file you can load your translation from any location you wish.
There is more information on translation in the FAQs.
Thanks again for taking the time to review! I hope this information is helpful to you and others.