The Central West Coast chapter of the Florida Public Relations Association was looking for an app their public relations members could use to contact members of different media. The client needed access to the back-end to add new public relations members once a month using a CSV file. The app listed all of the members that had signed up through the website, their location, and what they covered, along with a profile containing their contact details, and a photo. New people who wanted to be on the list could sign up for the application through the front end for free. After signing up, they had access to edit their profile but not access to see the other members. The admin also wanted access to both FPRA members and media members so they could edit and delete profiles.
The client also wanted a filter that took three multi-select inputs of media, coverage, and location and worked in real-time. For example, if a FPRA member wanted to find all the members that had signed up through the website that worked in Radio, in Clearwater or Tampa, that covered Hard News, Sports, and Politics, they could use the filter at the top to limit my results.
I used one plugin (Ultimate Member) that allowed the creation of users on the front end so that new media members could sign up. I had another plugin (Faceted Search for UM) that took the metadata assigned to the profile during creation and, using AJAX to keep it real-time, filtered the results on page. I also used custom CSS to make the grid and profiles look a bit nicer. I used Role Editor to provide different roles, like the public relations members role to access the list of media members, and a back-end admin for the client to log in, edit profiles, and add bulk users with another plug-in. And finally, I used Adminize to allow admin access to the back-end where they could log in and edit users, but restricted access to anything other than users profile so they couldn't accidentally break anything.