Thursday, 13 March 2014

Here we go again ZenCart.

So I'm doing yet another ZenCart site for a customer. The latest version 1.5.1 requires PHP 5.5 which meant we had to set up a dedicated LAMP server, which actually is about time.

I did all the usual PITA stuff of changing permissions on folders so it installs and that [supposedly] was fine. Now the default template is pretty nasty to say the least so I had a quick punt around and found a suitable one and installed that. But wait, what's this?

WARNING: An Error occurred, please refresh the page and try again.

Really? What kind of error? A hint would be nice? Now your first thought is "This must be a template related error as the default one works?" so after some searching (And time wasting I hasten to add.) I find that supposedly ZenCart does not turn on Layout Boxes by default. You have to go in there and turn them on, but wait!

WARNING: An Error occurred, please refresh the page and try again.

WTF now? Oh yes, clicking on Tools--Layout boxes controller bombs out with that very same, ever so helpful message! So off we go again in search of an answer. After losing even more time (And time is money you know.) I find a kinda helpful answer "Check your logs." so off I go to my logs and it says;

PHP Fatal error: 1146:table 'my.TABLE_EZPAGES_TEXT' doesn't exist

WTF? Surely that's a core element of ZenCart? After all, there is a button for Layout boxes controller why would there not be a table for it? But no! According to DrByte on this thread http://www.zen-cart.com/showthread.php?200200-Error-on-ez-pages

"There is no "ezpages_text" table in original Zen Cart code."

I also had to laugh at Kobra who apparently is a at the Black Belt level for support who asked

"Table 'XXXX.TABLE_EZPAGES_TEXT'Are the XX's actual or just what you added?" Bwahahahaha

Tears flowed down my face when I read that, talk about not understanding what your reading? As if they're going to put myxyz.TABLE_EZPAGES_TEXT? You'd still ask "What's myxyz?" I suspect?

Anyway the thread is about as helpful as a one legged man in an arse kicking competition. Suffice to say supposedly you now have to install Multi-Language EZ-Pages which comes with a database script to add the table[s]. Who's bright idea was that to make an integral function of ZenCart a plugin? Oh and just look at these hoops you have to jump through!

Step 2.  replace the following two CUSTOM folder with your own folder(template) name
  includes\modules\CUSTOM
  includes\modules\sideboxes\CUSTOM

Step 3.  Make a copy of the included file
  admin/includes/languages/english/extra_definitions/ezpages_multilanguage_defines.php
and save it as
  admin/includes/languages/YOUR_LANGUAGE/extra_definitions/ezpages_multilanguage_defines.php
then edit the two define statements in the file to suit your language.

And then @tigg wonders why I hate it with a vengeance. :-)

1 comment:

Mark Croft said...

it made more sense to me but i was a programmer and can understand that foreign langugae they talk. Its seem at a guess that it was not tested enough for other languages other then french and thats seems to be more of the problem then anything.