How to add special shipping by product in Zen Cart

originally posted at
I am in the process of migrating a static site ( to a database driven site “powered by” zen cart. One of the features requested was the ability to add special shipping charges for odd shaped items, like posters.

After doing some research I discovered a page with instructions at, but it took me awhile to figure out how to implement them for the specific situation I was targeting. After reading the instructions a few times I realized that I had to really create an extra read-only text attribute to make my “special shipping” attribute be selected (as a single radio button) by default. Here’s what it looks like in the admin panel:

zencart attribute controller legend
zencart attribute controller, showing the options to add a required attribute to a product

And here’s what it looks like on the product page (the radio button is selected by default now):

zencart shipping example

Though I just realized that the order is the opposite of what I want, even though I specifically set the order as noted above. Does anyone know why I can’t set the order in this way?

Update: I found a thread which helped me get the attributes sorted at The specific change I made which worked was to set the sort order for the attribute names, under Catalog -> Option Name Manager (they were all set to sort order 0 on that page before).

Join the Conversation


  1. Thank you Robert, this really helped me out. This solution is clean and simple. Suprisingly, without any additional modules the only other way to do this is to enable perunit shipping under default shipping module and utilize the weight field as the additional shipping cost, but this adds additional complexity during checkout if you have multiple shipping options.

  2. Hi Nes,
    Thanks for the comment. Yes my client has thousands of products so I didn’t want to get involved with adding weights to each one. I suppose I could have just added weights to the special shipping items but I think that would take longer than this because attributes can be applied to a whole category at once.

Leave a comment

Your email address will not be published. Required fields are marked *

CommentLuv badge