Zencart has a great override system. I’m currently setting up a Zen Cart website and loving this override system. The only improvement I see that is REALLY NEEDED is an ADMIN OVERRIDE. That would be terrific. Until then here’s a schematic of the current Zen Cart override system.
Anybody else update from 1.3.8 to 1.3.9 and you cannot log into the admin anymore. Just an infinite loop of typing your password over and over again to end up back at the login screen with the username and password boxes cleared. When you type the password incorrect, it lets you know, but when it’s correct you’re stuck in an infinite loop of trying to log in over and over again.
Here’s what we do to fix this problem.
Stop using chrome because it’s horrible caching system messes me up developing 100% of the time! THANKS GOOGLE!
Zen cart’s forums and wiki are great, just somewhat of a pain in the ass, so here’s what i found that is useful, and i may use in the future too.
Re: Overriding functions/html_output.php
There is no in-built override system for files in the includes/functions folder, but I recentyly figured out a method to do it by utilizing the override capabilities within the autoload/init_includes system.
First, make a copy of includes/init_includes/init_general_functions.php and save it in the includes/init_includes/overrides/ folder. Then edit that file to modify the loading of the html_output.php file so that it calls the file from an overrides folder like:
require(DIR_WS_FUNCTIONS . ‘overrides/html_output.php’);
Then you can create your new folder includes/functions/overrides/, and put an edited copy of html_output in there. This way you can edit or add functions within html_output.php and not have to worry about duplicate functions warnings, or about your changes getting overwritten during an upgrade.
You can use a similar method for overriding anything in the functions or classes folders, which don’t have an inherent override capability.
An assumption is what you arrive at when you get tired of thinking…