Almost a year ago we started developing a web project for a client on a social networking basis. This was actually the second similar project for the past 2 years as we have also designed a dating site and the latter solution was a social networks with custom profiles and more. There were a few tricky features such as custom profile type creation (different professions to be defined with their fields and labels through admin) and financial stats for paid users, and the speed was an important requirement.
After some hardcore coding over 2 client-based websites using WishList member and comparing the amount of hours for development of the three projects (two projects here and the one I used to manage a year back) I’m pretty sure we could have done this in WordPress using this social networking plugin. It has paid members with expiring registration and a smart PayPal compatibility, different roles to be defined, registration pages, granular protected content for roles (including menu items). Pretty cool indeed.
However, as with an every single one piece of code that is not a custom module for the given project, here there are the top 5 reasons I don’t like WishList member although I find it being a pretty powerful tool.
- Paid. Yes, top plugins such as GravityForms are not free. I can live with that, developers had put tons of effort to make them user friendly, feature rich and stable. True story, but only if and when bullets 2 and 3 were covered.
- Encrypted. The WishList Member code is encrypted and protected from any modifications. I can’t even explain you the amount of hours involved to lookup the terribly documented hooks and the flow of the plugin, and also pimping some really simple and basic layout blocks. As the code has been denied from modification, I’m usually in the black box not being able to debug what happens nor even change it. It sucks big time.
- Poor support. The support forum has hundreds of questions with no answers. I can hardly find answered questions, and I filed a ticket 3 weeks ago that I believe is still unanswered.
- Dummy user guides. As the code is protected, the only video materials and documentations that I find usable are the user-based ones – how to use the straight-forward part of the system. A real project never gets in a way that the plugin could fulfill 100% of the requirements with its straight options. And the lack of fulfilling details on the core is absurd. After all we have some other requirements such as multilingual content and geo-based location conditions, so this misty lake is not the best place to swim in.
- Lack of custom profile integration. New profiles for the system extend the standard users module, but using it as a social network usually requires a custom post type for a better usability of the new profiles – such as featured images, tags and more. I believe it would be more appropriate to create a bridge between the standard registration and some custom post type.
The system itself is really a lot powerful, but the lack of a realistic customization and the auto magic on the back could dig the project way down. I have troubles editing the registration template as the only easily modifiable thing is the registration form panel with the fields (which is also poorly alterable according to my requirements). Or adding custom rules to the navigation menu. Or setting different default language for a given role. Aside of that the profile saves me hundred of hours for protecting even the post types content, taking care of paid users entirely and other fancy details.