How to setup Zencart TEXT attribute for your product
Zencart provides you option to display attributes of your products on the product info page. You can display attributes in radio button, checkbox, dropdown etc controls.
Zencart also provides you the option of displaying text boxes where you can take input from the customer and you can charge the customer for it. This is a good option
but sometimes it does not work as intended due to corrupt template files or conflict due to other modules.
Here I will try to add a TEXT attribute and associate it with a product and then list the most common problem associated with it
If you would like to use TEXT attribute in Zencart please do the following steps
1. Click on Option Name Manager in the Catalog menu
2. Add the option name and select TEXT from the drop down
3. After saving it proceed directly to the Attribute Controller page. Remember we do not need to add any value to the TEXT attribute on the option value manager page.
4. Select the product against which you would like to add the TEXT attribute. The in the Option Value drop down you should see TEXT [RESERVED FOR TEXT/FILE ONLY ATTRIBUTES]. Select it and add the price against it.
5. Click on Insert button and you should see the TEXT attribute against that product on the page.
If you see the TEXT attribute against the product which you have added and it is calculating the price of the product as well as the attribute on the shopping cart page then your system is working correctly and you have nothing to worry about.
If not then you should do the following steps
1. Run the following statements on mySQL or in the Zencart Install SQL patches
INSERT INTO `configuration` VALUES ('', 'Product option type Select', 'PRODUCTS_OPTIONS_TYPE_SELECT', '0', 'The number representing the Select type of product option.', 0, NULL, '2007-03-19 17:57:39', '2007-03-19 17:57:39', NULL, NULL);
INSERT INTO `configuration` VALUES ('', 'Upload prefix', 'UPLOAD_PREFIX', 'upload_', 'Prefix used to differentiate between upload options and other options', 0, NULL, '2007-03-19 17:57:39', '2007-03-19 17:57:39', NULL, NULL);
INSERT INTO `configuration` VALUES ('', 'Text prefix', 'TEXT_PREFIX', 'txt_', 'Prefix used to differentiate between text option values and other option values', 0, NULL, '2007-03-19 17:57:39', '2007-03-19 17:57:39', NULL, NULL);
INSERT INTO `configuration` VALUES ('', 'Image Handler Version', 'IH_VERSION', '2.0', 'This is used by image handler to check if the database is up to date with uploaded image handler files.', 0, 100, NULL, '2007-06-06 16:47:03', NULL, 'zen_cfg_textarea_small(');
2. Run the following statement if you don't see the TEXT [RESERVED FOR TEXT/FILE ONLY ATTRIBUTES] in the Option Value drop down on the Attribute Controller page
INSERT INTO products_options_values (products_options_values_id, language_id, products_options_values_name) VALUES (0, 1, 'TEXT');
After running the above SQL statements you should be fine and everything should work correctly. If you still face a problem then do let me know.