Terryburg’s Tales of Things You Might Not Know

Things you might not know about MijoShop

Things you might not know about MijoShop

When Joomla 1.5 reached end-of-life I was faced with the migration of an ecommerce site that had been powered by Virtuemart. But Virtuemart wasn’t ready for Joomla 1.6 .. or 1.7 … or 2.5. When it finally got halfway stable it didn’t come with built in support for digital downloads. We could not wait any longer. Time for a new store.

There was a lot of good online buzz about something called Mijoshop, a Joomla wrapper for the OpenCart system. (It is apparently a fork of AceShop?) One “expert consultant on Joomla ecommerce solutions” rated it top two with Hikashop, with much better support for digital downloads, and the promise of thousands of available extensions due to its underlying engine, OpenCart.  Not being blessed with unlimited budget or time try out numerous ecommerce solutions before the conversion, I took these folks at their word, jumped over the edge, and purchased MijoShop.

It has been an experience, for sure, and I’ll start out by saying I think the guys at Miwisoft formerly Mijosoft do a decent job of support, and issues I’ve encountered have not really been MijoShop issues.

BUT …

First one little illustrative story about OpenCart. The main guy who maintains it just cannot conceive of any reason a business might want their customers to be able to download digital files from orders in varying states of completion. Let’s say, from an order they just made that’s still in the pending state because maybe there are still unshipped physical products, or maybe an order in completed state where the customer simply hasn’t downloaded his file yet or might want to do a 2nd or 3rd download later. He just just can’t fathom it. And so you are faced with making your own hack to an OpenCart core program to allow downloads for orders in multiple states of completion. Many other people have also seemingly found it necessary to hack OpenCart to improve functionality, as there truly are thousands of extensions available.

Which leads us to a 2nd little story about OpenCart, and those thousands of available extensions. You really will need some, because base OpenCart is a bare bones solution that does everything minimally. Very minimally. For instance, feel like resetting come customer’s downloads? Ha. Not in base OpenCart you don’t. It also turns out these extensions almost all cost money, at least most of the useful ones, $10 here and $25 there, and pretty soon your $59 MijoShop is a very pricey little hodge podge . And oh yes, OpenCart’s credit card payment processor of choice is on the insecure/dangerous payment processors list, so you better use your Paypal.

But of course, that’s not the end of it, because it also turns out there’s no standard way for writers of OpenCart extensions to prepare the things or have you install them. The better extensions use vQmod, and come either as a pure XML file to hook into existing code, or as some separate code with a vQmod to hook that into the framework. Then, on the other end of the spectrum, there’s the guys who simply hack OpenCart core and instruct “simply copy these files into the corresponding OpenCart directories”, thus overwriting the existing OpenCart files, that’ll be $10 please. Not to mention, of course, overwriting any other mods that might have been made to those files, by you, some previous mod, or anyone else … including the guys at Miwisoft.

That’s right, MijoShop isn’t simply a wrapper around standard OpenCart, it’s a wrapper around a customized version of OpenCart. The Miwisoft guys have added a bunch of their own code to various OpenCart programs. Generally it’s reasonable extra code, like input filters OpenCart never implemented, but still … it’s no longer vanilla OpenCart. And that impacts the purchased extensions, including the vQmod ones that might be looking for some string or position from a string, and conversely the purchased extensions can affect the MijoShop version of OpenCart.

And it only gets worse. Because the MijoShop version of OpenCart is customized, all the OpenCart code is updated/overwritten every time there is a MijoShop update, which happens quite often. So all those extensions that simply replace OpenCart code, or modifed it in any way? Poof. Gone. You would have to reinstall them all, and/or re-do any hacks you made yourself.

So, the takeaways are these if you’re going to use MijoShop:

MijoShop: Not an ecommerce solution for beginners, the faint of heart, the impatient, or those whose webmasters/developers expect to be compensated for all hours of work.

OpenCart extensions: DO NOT under any circumstances purchase any that are not vQmod based. Check that extension and its install instructions carefully before committing your money. And when you do commit money, use your Paypal account to buy them. You should probably always start out your extension search at Miwisoft and their marketplace list of approved MijoShop-safe extensions, but there’s not always what you need on their list.

Your own hacks: Learn to use vQmod and make it your friend, or the next update to MijoShop will wipe you out.  If you do hack the OpenCart code directly, make sure you have a way to get your hacks back every time, like good doc, a solid git repo with your own branch, and a 1st class diff tool.

One final note: If you need template overrides, learn how to do them in OpenCart, according to the docs at Miwisoft. Don’t use standard Joomla template overrides. You will thank yourself later, when vQmods still work.