I've got TEXT_MAIN being displayed on my page (or other unexpected UPPERCASE words)

Lesson

An uppercase set of words akin to TEXT_MAIN or ENTRY_STATE_TEXT  or SOMETHING_LOOKING_LIKE_THIS  is called a "constant" in PHP language terms.
A "define" statement is used to declare a constant.

This is what Zen Cart currently uses to build language output content, among other things.

Commonly you'll see language definitions in the form of:
define('TEXT_MAIN', 'Something to display here');

Then, in a template file or somewhere else in the system, there will be a request to display the contents of TEXT_MAIN ... often in a PHP "echo" statement, but could be in many other forms too.

If the constant TEXT_MAIN hasn't been defined anywhere, or if the file in which it is defined has a syntax error above where it's defined (causing it to not *get* defined), then the name of the constant will be displayed *instead of* the defined content.

The Problem

If you're seeing 'TEXT_MAIN' on your screen instead of regular normal language words, then *somewhere* in your files is a request to display the value defined to the TEXT_MAIN constant, but, since you don't have it defined, you're seeing the constant name instead.

You have to find out where it was supposed to be defined, and fix it.

Causes

80% of the time this is a cause of someone editing a language file and "deleting" define statements that they don't want to display, instead of just deleting the text that's currently being displayed.
ie: instead of just deleting the line altogether if they don't like what TEXT_MAIN was defined to in the first place, one should use something like this to make it display "nothing":
define('TEXT_MAIN', '');

10% of the time it's a result of a syntax error where a define statement earlier in the file has mismatched quotation marks, or a ) or ; has been dropped, etc etc.

10% of the time it's because you've failed to upload the language file altogether, and thus the define is missing.


Good luck sleuthing.

You might start with checking which files you've edited recently or contributions you've added, or compare your files vs a fresh set of Zen Cart files.
  • 4 Users Found This Useful
Was this answer helpful?

Related Articles

How can I find out what version of Zen Cart or PHP or MySQL I'm using?

To find out what version of Zen Cart or PHP or MySQL you are currently using, you can simply go...

Getting a BLANK PAGE? Here's the answer ...

If you're getting a blank page when trying to browse to a certain page on your store, or after...

What's New in the Upcoming v2.0 release?

Database Abstraction Layer and Sql CacheThe abstraction layer has been re-factored to include a...

Image Preparation - How-to

I've seen several posts where people obviously aren't quite sure about the best way to set up...

Some tips to modify stylesheet

1. Download Web Developer extension for FireFox here2. Install & restart FireFox. You should...